我对 C 编程非常陌生,这是作业的一部分。我正在尝试读取以下格式的逗号分隔文本文件:
[value1], [value2]
在 C 中并尝试将它们作为 string 和 int 参数传递到函数中。我尝试过使用 sscanf() 甚至使用 fgetc() 进行操作,但没有太多帮助。事实证明,逗号后面的空格是一个问题。
Example:
2001, 102
1314, 78
0410, 910
...
请帮帮我。
谢谢。
感谢@rubberboots 的帮助。
#include <stdio.h>
#include <string.h>
void main()
{
FILE *fp = fopen("user.dat", "r");
const char s[2] = ", ";
char *token;
int i;
if(fp != NULL)
{
char line[20];
while(fgets(line, sizeof line, fp) != NULL)
{
token = strtok(line, s);
for(i=0;i<2;i++)
{
if(i==0)
{
printf("%s\t",token);
token = strtok(NULL,s);
} else {
printf("%d\n",atoi(token));
}
}
}
fclose(fp);
} else {
perror("user.dat");
}
}
用户.dat 文件:
1000, 76
0095, 81
2910, 178
0001, 1
Output:
1000 76
0095 81
2910 178
0001 1
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)