C言語は、1972年にAT&Tベル研究所の、デニス・リッチーが主体となって作成したプログラミング言語です。 B言語の後継言語として開発されたことからC言語と命名。そのため、表記法などはB言語やALGOLに近いとされています。 Cの拡張版であるC++言語とともに、現在世界中でもっとも普及されているプログラミング言語です。
Q&A
解決済
3回答
566閲覧
総合スコア40
1グッド
0クリップ
投稿2022/06/30 01:26
1
0
下記のコードで実行しても何も出力されないのは何故でしょうか? また、aにnumを代入するにはどうしたら良いか教えてください。
c1int main(void) { 2 3 int num = 0; 4 char a; 5 a = (char)num; 6 printf("%c\n", a); 7 8 return 0; 9}
c
1int main(void) { 2 3 int num = 0; 4 char a; 5 a = (char)num; 6 printf("%c\n", a); 7 8 return 0; 9}
気になる質問をクリップする
クリップした質問は、後からいつでもMYページで確認できます。
またクリップした質問に回答があった際、通知やメールを受け取ることができます。
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
質問へのコメント
2022/06/30 01:28 編集
2022/06/30 01:32
回答3件
ベストアンサー
printf関数の書式指定子が"%c"ですと、その数字に対応したASCIIコード文字を表示します。 ASCIIコード表というものを調べていただくとわかるのですが、0に対応するのはNULLです。 要は空文字なのでなにも表示されません。
numに48を代入してみてください。0が表示されると思います。 質問者様の質問の意味に沿っているかわかりませんが、aにnumは代入されています。
投稿2022/06/30 01:40
総合スコア197
a には数値の 0 が入ってますが、文字コード 0 は多くの環境で表示されません。
a
文字の 0 を表示したいなら、a には '0' (多くの環境で数値の48) が入るようにしましょう。
'0'
num に入っている数値を表示したいのなら、printf("%d\n", num); です。
num
printf("%d\n", num);
投稿2022/06/30 01:35
総合スコア22015
int num = 97; などとして実行してみてください。
int num = 97;
投稿2022/06/30 01:34
総合スコア2857
あなたの回答
tips
太字
斜体
打ち消し線
見出し
引用テキストの挿入
コードの挿入
リンクの挿入
リストの挿入
番号リストの挿入
表の挿入
水平線の挿入
プレビュー
15分調べてもわからないことはteratailで質問しよう!
ただいまの回答率85.29%
質問をまとめることで思考を整理して素早く解決
テンプレート機能で簡単に質問をまとめる
C言語でint型をchar型にキャストできない