【发布时间】:2016-02-02 16:14:31
【问题描述】:
我想生成这样的输出“名字姓氏:day.month.year”,但我得到的是一些混淆的顺序。我是 C 新手,我不知道这里发生了什么。
这就是我得到的
这是我的代码
char string[imax];
fgets (string, imax, team1); //wo, max count, aus welchem file
int i=1, k=0;
char delimiter[] = " ";
char *day, *month, *year, *firstname, *surname;
char *stats[5];
while(fgets(string,imax,team1) != 0)
{
/*stats[0] = strtok(string,delimiter);
while(i <=4)
{
stats[i] = strtok(NULL,delimiter);
i++;
}*/
day = strtok(string,delimiter);
month = strtok(NULL,delimiter);
year = strtok(NULL,delimiter);
firstname = strtok(NULL,delimiter);
surname = strtok(NULL,delimiter);
printf("%s ", firstname);
printf("%s:", surname);
printf("%s.", day);
printf("%s.", month);
printf("%s. ", year);
}
编辑:我得到的顺序与我正在读取的文件中的顺序相同
【问题讨论】:
-
去掉
surname末尾的\n。 -
并在最后一个
printf语句中添加\n