入力したテキストを表示する小さなcプログラムを作成しました。入力されたテキストが "show version"の場合、バージョンが表示されます。ここ は、それがすべてのチャー+ 1のためにV1を印刷するサンプルコードStrcmpとgetchar
#include<stdio.h>
#include<string.h>
void main(){
int i;
char j = (char) i;
while(i != '#'){
i = getchar();
if(strcmp(&j, "show version")) printf("v1");
else putchar(i);
}}
あります。 提案があります。
'j'の値は不明です。' i'を変更した後に 'i'を' j'に割り当てないため、 'i'を設定すると変更されません。また、 'strcmp()'はヌルで終了する文字列を期待しています...(おそらく)ヌルでない 'char'へのポインタは十分ではありません - ヌル文字を見つけるまで、ストリングが一致しないと判断した。言い換えれば、未定義の動作が多く、言語の仕組みに関する誤解があるように見えます。 – Dmitri