字符串是按照下面程序读出来的,然后读出来的~要都换成0。怎么做呢?
/* The function reads stings from a txt file. */
int
readevent( FILE *pFile, char **pgc, char **name, char **rag, char **decg, char **absmag, char **dist)
{
void *pgc1, *name1, *rag1, *decg1, *absmag1, *dist1;
char *temp, *temp1;
int i=0, n=1024; /* n is buffer. */
if ( !(*pgc=(char *)malloc(n*50))||
!(*name=(char *)malloc(n*50))||
!(*rag=(char *)malloc(n*50))||
!(*decg=(char *)malloc(n*50))||
!(*absmag=(char *)malloc(n*50))||
!(*dist=(char *)malloc(n*50))||
!(temp=(char *)malloc(n*50)) ) /* assume the longth of all strings less than 300 */
printf("memory error\n");
while (!feof(pFile))
{ fscanf(pFile, "%[^|]|%[^|]|%[^|]|%[^|]|%[^|]|%[^|]|%[^|]|%[^|]|%[^|]|%[^|]|%[^|]|%[^|]|%[^|]|%[^|]|%[^|]|%[^|]|%[^|]|%[^|]|", *pgc+i*50, *name+i*50, *rag+i*50, *decg+i*50, temp, temp, temp, temp, temp, temp, temp, temp, temp, *absmag+i*50, *dist+i*50, temp, temp, temp);
i++;
if (i==(n-1)) /*buffer is not long engouh */
{
9 个解决方案
#1
一个while循环,遍历字符串即可
if(buf[i]=='~')
buf[i]='0';
if(buf[i]=='~')
buf[i]='0';
#2
void repl(char *s)
{
for (char *p = s; *p != '\0'; ++p)
{
if (*p == '~')
*p = '0';
}
}
#3
#4
你看就觉得是作业题=-=!
#5
for (char *p = s; *p != '\0'; ++p)
{
if (*p == '~')
*p = '0';
}
{
if (*p == '~')
*p = '0';
}
#6
老师挺可怜的,看到的作业都是抄的
#7
抄完作业还不结贴给分
#8
请判断fscanf的返回值
#9
是作业中的一部分啦。不过发现文件读取的时候自动就给赋值0了。所以就没用这个了。。
另外第一次用这个论坛,不小心给点了扔个板砖。。。。单元不会有问题。。。
刚学c语言,很不熟悉,过去一直用mathematica,结果现在的项目过去的人都用c来处理,我也*跟着用。麻烦各位大侠帮着看看新问题
http://topic.csdn.net/u/20101015/06/48c93834-9f4e-4e48-8b27-5835f7c6779f.html?seed=149524747&r=70102803#r_70102803
另外第一次用这个论坛,不小心给点了扔个板砖。。。。单元不会有问题。。。
刚学c语言,很不熟悉,过去一直用mathematica,结果现在的项目过去的人都用c来处理,我也*跟着用。麻烦各位大侠帮着看看新问题
http://topic.csdn.net/u/20101015/06/48c93834-9f4e-4e48-8b27-5835f7c6779f.html?seed=149524747&r=70102803#r_70102803
#1
一个while循环,遍历字符串即可
if(buf[i]=='~')
buf[i]='0';
if(buf[i]=='~')
buf[i]='0';
#2
void repl(char *s)
{
for (char *p = s; *p != '\0'; ++p)
{
if (*p == '~')
*p = '0';
}
}
#3
#4
你看就觉得是作业题=-=!
#5
for (char *p = s; *p != '\0'; ++p)
{
if (*p == '~')
*p = '0';
}
{
if (*p == '~')
*p = '0';
}
#6
老师挺可怜的,看到的作业都是抄的
#7
抄完作业还不结贴给分
#8
请判断fscanf的返回值
#9
是作业中的一部分啦。不过发现文件读取的时候自动就给赋值0了。所以就没用这个了。。
另外第一次用这个论坛,不小心给点了扔个板砖。。。。单元不会有问题。。。
刚学c语言,很不熟悉,过去一直用mathematica,结果现在的项目过去的人都用c来处理,我也*跟着用。麻烦各位大侠帮着看看新问题
http://topic.csdn.net/u/20101015/06/48c93834-9f4e-4e48-8b27-5835f7c6779f.html?seed=149524747&r=70102803#r_70102803
另外第一次用这个论坛,不小心给点了扔个板砖。。。。单元不会有问题。。。
刚学c语言,很不熟悉,过去一直用mathematica,结果现在的项目过去的人都用c来处理,我也*跟着用。麻烦各位大侠帮着看看新问题
http://topic.csdn.net/u/20101015/06/48c93834-9f4e-4e48-8b27-5835f7c6779f.html?seed=149524747&r=70102803#r_70102803