我写下面的代码从stdin ex逐行读入。我试图通过分隔符分割字符串,但它不起作用,为什么?
city=Boston;city=New York;city=Chicago\n
然后用';'分隔每一行。分隔并打印每条记录。
但由于某些原因,“记录”指针始终返回为空。为什么?
char del = ';';
char input[BUFLEN];
while(fgets(input, BUFLEN, fp)) {
input[strlen(input)-1]='\0';
char* record = strtok(input, &del);
while(record) {
printf("Record: %s\n",record);
record = strtok(NULL, &del);
}
}
5回答几乎是同一时间! – RageZ 2009-11-13 02:23:36
如果我想要在主体内有另一个while循环并将记录进一步分割,该怎么办?我注意到,那么第一个循环不会循环超过第一次迭代,为什么? – goe 2009-11-13 03:37:56