この章では変換指定文字について説明します。
printf関数の変換指定文字は以下の通り複数あります。
先ほども言いましたが、printf関数はC言語で使われている関数ですが、C++でも使えます。
では例をみてみましょう。 結果は以下のように出力されます。 先頭の2文字分が開いてしまうので、その場合にはスペースが入れられます。
またのようにデータの桁数と同じか,または小さい場合には何も指定していないのと同じです。
では次の例をみてみましょう。 結果は以下の通りです。 浮動小数点数の場合には小数点も入れた「右詰めの表示幅」になります。
数値を右詰めで表示した時の余った場所にはスペースが入れられます。
出力結果の上から2つ目を見ていただくと1文字分のスペースが開いているのが分かります。
また、数値を右詰めで表示した時の余った場所にはスペースが入れられます。
次は以下の例で10進数である100を8進数と16進数に変える方法について説明します。 結果は以下の通りです。
次の例は「0」「0x」を省略しないで出力させる例です。 結果は以下の通りです。
次の例はテンプレートの中で「%」を文字として出力する場合の例です。
タグ: printf
この章では変数に関するまとめと注意点について説明します。
変数の宣言の基本構文は以下のように説明しました。 しかし複数の変数を宣言するときには以下のようにバラバラに宣言するのはスマートな方法ではありません(スペースの都合で以下の例のprintf文を2行で書いていますが、1行で書いてもいいです)。
上の書き方でも間違いではありませんが、以下のように変数の宣言をまとめて書くとプログラムが読みやすくなります。 今までバラバラに変数の宣言をしていましたが、このように1行でまとめることもできます。
この例ではの箇所です。
まとめて変数を宣言した時の注意点について説明します。 つまり、まとめて宣言を書くことが出来るのはデータ型が同じ場合だけです。
違う型同士はまとめて書くことが出来ません。
puts関数をもっと知ろう
printfについてもっと知ろう
この章では変換指定文字について説明します。
以下がprintfの変換指定文字です。 次の例では出力される値の表示幅を指定する方法について説明します。 結果は以下のように出力されます。 「%」と「d」の間に数値を入れると、その数値は表示幅を意味します。
この例では5を入力しているので567をで表示しますが、先頭の2文字分が開いてしまうので、そこにはスペースが入れられます。
出力結果を見ていただくと2文字分のスペースが開いているのが分かります。
のようにデータの桁数と同じか、もしくは小さい場合には何も指定していないのと同じになります。
「%」と「d」の間に先頭の0を含めた数字を入れると表示幅を意味するのは上の例と同じです。
上の例と違うのは数値を右詰めで表示したときの余ったスペースは0で埋められることです。
この例は05を入力しているので567を右詰めで5桁で表示しますが、先頭の2文字分が開いてしまうので、その場合には0が入れられます。
では次の例をみてみましょう。 結果は以下の通りです。 では説明をしていきます。 =>「%」と「f」の間に数字を入れると、それは表示幅を意味します。
浮動小数点数の場合には小数点も入れた表示幅になりますので、この例では先頭の1文字分が開いてしまいます。
その場合にはスペースが入れられます。
出力結果の上から2つ目を見ていただくと1文字分のスペースが開いているのが分かります。
=>「%」と「f」の間に先頭の0を含めたの数字を入れると表示幅を意味するのは上の例と同じです。
先ほどの例と違うのは数値を右詰めで表示したときの余ったスペースは0で埋められることです。
浮動小数点数の場合には小数点も入れた表示幅になりますので、この例では先頭の1文字分が開いてしまいます。
その場合には0が入れられます。出力結果の上から3つ目を見ていただくと1文字分のスペースが0で埋められているのが分かります。
=>「%」と「f」の間に小数点を含めた数字を入れると点の左側の数値が表示幅を示し、点の右側の数値が小数点以下の桁数を示します。
例では9桁の表示幅で小数点以下は2桁で設定していますが、余りはスペースで埋められます。
以下の例で10進数である100を8進数と16進数に変えています。 int型の整数を8進数に変えるにはを使います。
int型の整数を16進数に変えるにはを使います。 =>100を8進数で表すと0144ですので、出力結果はになります。
144の前の0が省略された形で出力されます。
=>100を16進数で表すと0x64ですので、出力結果はになります。
64の前の0xが省略された形で出力されます。
次の例は0や0xを省略しないで表示させる例です。 8進数で0を省略しないで表示するには%とoの間に#を付けます。
16進数で0xを省略しないで表示するには%とxの間に#を付けます。
結果は以下の通りです。 次の例はテンプレートの中で%を文字として(パーセントとして)出力する場合の例です。 テンプレートの中で%を文字として(パーセントとして)出力したい場合はと指定することで%を出力することができます。
結果はです。
C言語の基礎を知ろう2
この章ではputs関数について説明します。
puts関数は文字列を出力させる関数ですが、基本構文は以下の通りです。 〇出力させたい文字列はで囲んでください。
また、このカッコの中のデータを引数と言います。
〇ダブルクォート自体は出力されません。
puts関数はカッコの中の文字列を出力させる関数と言いましたが、もっと詳しく言いますと改行を入れながら文字列を表示させる関数です。
例えば以下のようにputsを2つ並べたプログラムがあるとします。 もし、改行しないで出力したい場合にはprintf関数を使います。 〇 printf関数は文字列を出力する関数ですが、puts関数と違うのは改行を入れないで文字列を出力させることです。
〇出力させたい文字列をputs関数と同じようにダブルクォートで囲んで記述してください。 printf関数で出力する時に改行を入れたい場合にはと言う特殊な文字を使います。
HTMLのと同じ機能を持ちます。
では例をみてみましょう。 次の例をみてみましょう。 1つのprintfの中に2か所、改行文字がありますが、このように複数の箇所にを使用することが出来ます。