私はすでに他の質問などを見てきましたが、編集できないstrtokの最初の引数を使用できないことを確認しましたが、このコードには含まれていないと思いますが、それでもセグメンテーション違反が発生しますか?strtokを間違って使用していますか?
このコードは、csvコンマ区切り形式でstdinを取得し、stdinから数字を追加して、それらをstdoutに出力します。たとえば、トークンがポインターではない場合に機能していました。i+= token;
しかし、私は予想通りランダムな出力を得ていました。
#include <stdio.h>
#include <string.h>
int main(){
char *token, input[256];
int i = 0;
scanf("%s" , input);
token = strtok (input, ",");
while(token != NULL){
token = strtok(NULL, ",");
i += *token;
}
printf("%d\n", i);
return 0;
}
ありがとうLachlan