下記コードにおいて、scanf("%c", &moji);のところでなぜアドレス演算子を使って「&moji」としてるかがわかりません。
アンパサンドをつけずにscanf("%c", moji);ではなぜダメなのでしょうか?
C
1/* 2 * C言語のサンプルプログラム - Webkaru 3 * - 入力した文字がアルファベットの小文字か大文字かを判定 - 4 */ 5#include<stdio.h> 6 7int main(void){ 8 9 int i; 10 11 /* 文字 */ 12 char moji; 13 14 /* 文字を入力 */ 15 printf("文字を入力 = "); 16 scanf("%c", &moji); 17 18 /* アルファベットの小文字か大文字かを判定 */ 19 if((moji>= 'a') && (moji<='z')){ 20 printf("アルファベットの小文字!\n"); 21 } 22 else if((moji>= 'A') && (moji<='Z')){ 23 printf("アルファベットの大文字!\n"); 24 } 25 else { 26 printf("その他の文字!\n"); 27 } 28 29 return 0; 30} 31
回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2020/03/31 09:40