"charデータ型の値"を配列に格納したいが、動作しない。"char values"を配列に格納したい(C言語で)
まず、「gets」を使用してみました しかし、実行時エラーが発生しました。 コードは一つだけ、私は「scanf関数」を使用していたが、私は保存することができませんでした「charデータ型は、(それは文字列のような複数の文字でなければなりません)」、第二の方法では、この
int tmp = 0;
char arr[100] = { 0, };
while (arr[tmp]!=NULL)
{
gets(arr[tmp]);
tmp++;
}
for (int rtmp = 0; rtmp < a; rtmp++)
printf("%s ", arr[rtmp]);
return 0;
のようだったが、 (%sを試しましたが動作しません) さらに、arrayの最後の値は表示されません。
int a = 0;
scanf("%d", &a); //determine how much I input values
int tmp = 0;
char arr[100] ={ 0 , };
for(tmp=0;tmp<a;tmp++)
{
scanf("%c ",arr[tmp]);
fflush(stdin);
}
for (int rtmp = 0; rtmp < a; rtmp++)
printf("%c ", arr[rtmp]);
return 0;
私にとって最も「同一」は、「」値(「」どのくらいの値I入力を意味する) と配列の「char値」を記憶に通知することなく ..です
どのようにすることができます私はこの問題を解決する? ありがとうございます!あなたの助けは常に高く評価されています:)
'のscanf( "%cの"、ARR [TMP]);' - > 'のscanf( "%cの"、&編曲:[TMP]);' – BLUEPIXY
を最初のケースでは、あなたを'char'の配列を持っていますが、*要素*を' char'配列(ポインタ)として扱おうとします。 –
'fflush(stdin);'は未定義の動作を呼び出します。入力ストリームをフラッシュすることはできません。 – Olaf