プロが教える店舗&オフィスのセキュリティ対策術

プログラミングでc言語の配列の勉強をしているのですが、今まで見てきた配列は必ず要素が書いてあったのですが、今回は写真にあるようにprintf内に要素のない配列の変数が出てきます。これは配列の全部の変数を指すのでしょうか?(つまり今回はhello)
まだ知識不足なため、間違った言い方をしてるかもしれませんがおおめにみてください‼︎

「プログラミングでc言語の配列の勉強をして」の質問画像

A 回答 (3件)

>これは配列の全部の変数を指すのでしょうか?(つまり今回はhello)


そう理解してよいでしょう。

なお、char_arr1[]にストッパーがないので、
写真のプログラムは暴走する可能性ありですね。
正しくは、
char char_arr1[] = { 'H', 'e', 'l', 'l', 'o', 0x00 };
でしょうかね
    • good
    • 1
この回答へのお礼

ありがとうございます。
ストッパーとはなんですか?

お礼日時:2018/11/04 12:03

> ストッパーとはなんですか?



文字列の終端 null文字('\0')に関すること:
https://edu.clipper.co.jp/pg-2-16.html
    • good
    • 0

>ストッパーとはなんですか?



関数printf の 書式%s で想定している文字列の終端の印 のことです。

たとえば、
char char_arri[] = { 'H', 'e', 'l', 'l', 'o', ' ', 'w', 'o', 'r', 'l', 'd', 0x00}
ならば Hello world

char char_arri[] = { 'H', 'e', 'l', 'l', 'o', 0x00, 'w', 'o', 'r', 'l', 'd',}
ならば、Hello

と出力されます。
    • good
    • 1

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!