このコードは、インプットの例が "aabbc"のとき
a2b2c1とアウトプットするためのものです。(各単語の数を数える)
しかし、argv[1][i]とは別に、char*をmallocしなくてはいけなく、
また、インプットよりアウトプットの文字数が長くなった場合は、インプットされた文字列を出力するという制限があります。
そのため、毎回 printf("%c",pointer_list[num]);と、 printf("%d",pointer_list[num]); を交互に出力することはできず、int 型と、char型を混ぜてchar *pointer_listに保存しています。
最終的にこのpointer_listをfor loopで全部出力するときには、%d と %cが混合してるため、sprintf(pointer_list, "%c%d", pointer_list[i],pointer_list[i+1]);
とのように表示しようとしたのですが何も出力されませんでした。
アドバイスいただきたいです。どうかよろしくお願いします。
C
1 2int valu=0;//数字を示す 3int num=0; //リストの何番目かを示す 4char *pointer_list=malloc(sizeof(char)*size); 5 6pointer_list[num]=argv[1][i-1];//charのアルファベットを示す。 7num++; 8valu++; 9pointer_list[num]=value; 10
回答3件
あなたの回答
tips
プレビュー