C言語のputsを勉強したいな。
printfみたいに出力ができる関数だって聞いたんだけど、どんな違いがあるんだろう。
こちらの悩みを解決しますね。
この記事を書いている自分は、一日中プログラミングしていた過去がありました。現在、そこで学んだC言語について解説中です。
✔本記事の内容
・putsとは?(使い方も解説)
・putsを使うときの注意点(printfとの違い)
・putsのサンプルコード
putsの本質的な部分も解説します。
しっかり理解しましょう。
putsとは?(使い方も解説)
✔putsの特徴
- 変換書式を使わない
- 文字列の最後で改行する
putsとは、変換書式を使用せずに文字列を出力することができる関数です。また、文字列の最後に改行コードが自動的に出力されます。(毎回、出力後に改行されるってことですね。)
たとえば文字列の代入された配列がstrの場合、
puts(str);
のようにして出力します。
putsを使うときの注意点
putsのprintfとの大きな違いは、変換書式を使うことができないところです。
(この違いはかなり大きいです…)
#include <stdio.h>
int main()
{
char str[20]="Hello world!!!!";
puts(str);
printf("%s", str);
}
この場合、printfとputsの出力は同じで、
違いなんて無いんじゃね?
と思う方がたくさんいるかと思います。
では、仮に文字列が2つの変数に分裂していたらどうでしょうか。
#include <stdio.h>
int main()
{
char str1[10]="Hello";
char str2[10]="world!!!!";
puts(str1);
puts(str2);
printf("%s %s", str1,str2);
}
putsはprintfのように変換書式を使用できないので、printfのような書き方はできません。
出力すると、
Hello
world!!!!
Hello world!!!!
printfで出力すると期待した通りの出力ができますが、putsで出力すると期待外れな結果になることがあります。
このような場合、strcpyを使って文字列の連結をしてから出力しましょう。
いずれにせよ、
printfの方が融通が利くから…
putsは変換書式を知らなくても出力できるから…
のようにして決めるのではなく、きちんとした使い分けが重要です。
putsのサンプルコード
#include <stdio.h>
int main()
{
char str[20]="Hello world!!!!";
puts(str);
}
恐らく、これが最も簡単なプログラムですね。
Hello world!!!!
と出力されます。
変数宣言と代入を一緒にしていますが、この方法っを知らない人は覚えましょう。
下の記事で詳しく解説しています。
まとめ:putsの使い方と簡単なサンプルコード
putsの使い方と簡単なサンプルコードについて説明しました~
特徴は以下の通りです。
✔putsの特徴
- 変換書式を使わない
- 文字列の最後で改行する
今回は以上です!
次は、getsについて勉強しましょう。
ではでは~👋
コメント