stdin exから1行ずつ読み取るコードを以下に書きました。
都市=ボストン;都市=ニューヨーク;都市=シカゴ\n
次に、各行を「;」で分割します 区切り記号を付けて、各レコードを印刷します。
しかし、何らかの理由で、「レコード」ポインターは常に null に戻ります。なんで?
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);
}
}