私はCと非常に錆びています。これをコンパイルしようとすると、3つのネストされたifのそれぞれに "左辺のオペランドとして必要な左辺値"というエラーが発生します。 私はいくつかの本当にばかげた基本的な間違いをしているとはかなり確信していますが、私はそれを修正することはできません!cのargc/argv問題
また、コードは非常に素朴ですが、argvのさまざまな文字列をチェックするには良い方法があります(長さは6文字でなければなりません。最初の2文字はIC、FRまたはRGでなければなりません。数値コード)と正しい文字列を印刷しますか?
int main(int argc, char *argv[]){
int i=1;
while(i < argc){
if(strlen(argv[i]) == 6){
if(argv[i][0] == 'I' && argv[i][1] = 'C' && argv[i][2] >= '0' && argv[i][2] <= '9' && argv[i][3] >= '0' && argv[i][3] <= '9' && argv[i][4] >= '0' && argv[i][4] <= '9' && argv[i][5] >= '0' && argv[i][5] <= '9'){
printf("%s", argv[i]);
}
if(argv[i][0] == 'F' && argv[i][1] = 'R' && argv[i][2] >= 0 && argv[i][2] <= 9 && argv[i][3] >= 0 && argv[i][3] <= 9 && argv[i][4] >= 0 && argv[i][4] <= 9 && argv[i][5] >= 0 && argv[i][5] <= 9){
printf("%s", argv[i]);
}
if(argv[i][0] == 'R' && argv[i][1] = 'G' && argv[i][2] >= 0 && argv[i][2] <= 9 && argv[i][3] >= 0 && argv[i][3] <= 9 && argv[i][4] >= 0 && argv[i][4] <= 9 && argv[i][5] >= 0 && argv[i][5] <= 9){
printf("%s", argv[i]);
}
}
i++;
}
return(0);
}
EDIT:くそー、これはかなりばかな質問だったが、第二の割り当てに=の代わりに==を書きました。助けてくれてありがとう!
あなたはARGV [i]が[1] =「C''はない 'どう思いますか'if'ステートメントで –