- ベストアンサー
switch文で( )内がint型なのにエラーになる
こんにちは、Cの初心者です、宜しくお願いします。 下のようなコードを書いてやりましたが、「switch(kekka)」でエラーがでます、「switch('kekka')」としても同じです。 kekka = 'A' + 10 ;では75と値を出しているのですが、このような書き方は文法エラーなのでしょうか。 この「kekka」で分岐をさせる為にはどのような書き方になるのでしょうか。 ========================================================= #include <stdio.h> int main() { int C ; int kekka ; C='A'; printf("%d" , C ); //printf=65 printf("%c" , C ); //printf=A kekka = 'A' + 10 ; //kekka = 75 switch(kekka) { case 75: printf("OK"); break; default: printf("NO"); } return 0 ; }
- みんなの回答 (4)
- 専門家の回答
質問者が選んだベストアンサー
>「switch(kekka)」でエラーがでます 状況を具体的に示してください。 何をしたとき(コンパイル時?実行時?)に どんなエラー(エラーメッセージは?)が出ますか? >「switch('kekka')」としても同じです。 これは論外です。
その他の回答 (3)
- Tacosan
- ベストアンサー率23% (3656/15482)
既に書かれていることなのですが, 使っている処理系 (コンパイラ) と正確なエラーメッセージを「一字一句そのまま」書いてください.
- jacta
- ベストアンサー率26% (845/3158)
> このような書き方は文法エラーなのでしょうか。 C99でなければ、//で始まるコメントは文法エラーになる可能性はあります。
- SilverThaw
- ベストアンサー率32% (260/806)
>kekka = 'A' + 10 ;では75と値を出しているのですが、このような書き方は文法エラーなのでしょうか。 いいえ。 少なくとも「どこで、どんなエラーが出ているのか」は記載してください。 例えば、事故を目撃して110に電話をかけたとして「何処かで何か事故がありました」とだけ伝えて、内容が伝わると思いますか? とりあえず、提示されているソースではエラーとはなりません。 本当に「エラーが出る」ソースをそのまま記載していますか?
お礼
皆さんスミマセン、Switch文以外でのエラーでした。 どうも有り難うございました。 このような書き方が出来るのがわかってなかったので、、、、