5562

[code]

    12 33 10 94 12 35 199
    100 234 12 1 999 123 1 88 76 12
    1 2 99 2
    ・・・・
    
[/code]

のような入力テキストがあります。  
１行にある数字の数は上記の例のように決まっていません。

これを１行ずつ単語ごとに読み取ろうとし、

[code]

    char *tok;
    
    while(fgets(readline,N,fp) !=NULL){
        //printf("%s",readline);
        tok = strtok(readline," ");
        while( tok != NULL ){
            printf( "%s¥n", tok );
            tok = strtok( NULL, " " );  /* 2回目以降 */
        }
    }
    
[/code]

というコードを書きました。  
しかしコンパイル時に、

[code]

    25:7: warning: assignment makes pointer from integer without a cast [enabled by default]
    tok = strtok(readline," ");
    
    28:8: warning: assignment makes pointer from integer without a cast [enabled by default]
    tok = strtok( NULL, s2 );  /* 2回目以降 *
    
[/code]

というエラーが出ました。

どうすれば  
・１行内の単語（数字）の数決まっていないテキストから  
・１行ずつ  
・１単語ごと  
に分けて扱えるのでしょうか？  
テキストでは数字はスペース区切りになっています。


CC BY-SA 3.0
2015-01-27T09:45:54.463
5421
2015-02-18T03:03:48.910
2015-02-18T03:03:48.910
4236
2155
question
c
C言語 入力テキストを１行ずつスペースごとに抽出する方法

[code]

    #include <string.h>
    
[/code]

を追加したら動作しました。

ヘッダファイルを書き忘れないようにしましょう


CC BY-SA 3.0
2015-01-29T08:36:15.417
5562
2015-01-29T08:36:15.417
2155
5421
answer