標準入出力

目次

標準入出力とは

標準入出力とはコンソール画面での入力や出力機能です。

stdio.hをインクルードして使います。

何かと使う機会が多いのでよく覚えておきましょう。

printf()

printf("【出力する文字】");

printf()は特殊文字を扱うことができます。

特殊文字 意味
\n 改行
\\ \
\’
\”
\? ?

Windowsでは\が¥(半角)になります。

また、値を引数として使うこともできます。

int a = 1;
printf("%d %f %c %d", a, 2.4, 'c', a + 5);

第2引数が左から1番目の%X、第3引数が2番目…となります。
%Xには引数の型によってそれぞれ違う文字が入ります。

文字
整数 %d
浮動少数点数 %f
浮動少数点数(倍精度) %lf
文字 %c
文字列 %s

浮動少数点数型の場合は表示する桁数も指定できます。

float a = 1.0;

printf("%3.0f \n %.2f \n %2.5f");

.の前が整数部分、後が少数部分の表示する桁数になります。
出力結果は以下のようになります。

001
1.00
01.00000

puts()

puts()はprintf()同様標準出力の関数です。

puts("【文字列】")

の形で出力します。
変数名で出力内容を指定することもできます。

puts("Hello, World!");

char[] msseage = "Hello, World!";
puts(message);

scanf()

scanf()は標準入力の関数です。
ユーザーが入力した値を受け取り、変数に格納します。

scanf("%X", &【変数名】)

%Xにはprintf()と同様に特殊文字を挿入します。
なぜ変数の前に&をつけるかは関数を参照してください。

開発環境によってはscanf()を使うとエラーがでます。
これはこの関数に脆弱性が見つかっているため、以降使わないようにすべきであるからです。

対策としては代わりにscanf_s()を使うとよいでしょう。

gets()

gets()はscanf()同様標準入力関数です。

gets(【変数名】)

で入力値を受け取ります。
gets()は文字型の配列(文字列)でのみ受け取れます。


「標準入出力」への2件のフィードバック

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です