1

私が取り組んでいるコーディングの一部に問題があります。これには、リンクされたリストと特定の迷惑なポインターが含まれます。サンプルコードは次のとおりです。

PersonType *person;
FILE *c;
c = fopen("file.csv", "r");
char in[100];
fgets(in, 80, c); //Edited

root->head->next = 0;
char *getNum = strtok(in, ";");
char *getName = strtok(NULL, ";");
char *getHome = strtok(NULL, ";");
strcpy(root->head->getNum, getNum);
strcpy(root->head->getName, getName);
strcpy(root->head->getHome, getHome);
person = root->head;
if(person != 0){
    while(person->next != 0){
        person=person->next;
    }
}
//DEGUG
printf("Successfully Made a Person NODE");

コードはファイルから読み取られず、その理由は完全に困惑しています。XCODE デバッガー/トレーサーでは、すべての get char を nil で初期化します。誰かが私を正しい方向に向けることができますか?

ありがとう。

サンプルファイル

P1;Elyza;45 Random RD
P2;Ian;78 Shark CL
4

2 に答える 2

1
c = fopen("file.csv", "r");
char in[100];
fgets(in, 80, cin);

あなたはおそらく意味した

c = fopen("file.csv", "r");
char in[100];
fgets(in, 80, c);  // <---

fopen()また、ファイルが見つからない場合を処理するために、からの戻り値を確認してください。

于 2013-05-15T11:23:58.117 に答える
0
fgets(in, 80, cin);

問題があります。
確かにあなたはから読むつもりでしたFILE* c

fgets(in, 80, c);
于 2013-05-15T11:24:20.727 に答える