ID非公開

2021/4/16 13:07

22回答

int str_length(const char s[])

ベストアンサー

0

sの0個目→Gである→次へ sの1個目→Tである→次へ sの2個目→5である→次へ sの3個目→\0である→while文を終わる というような動きになります

その他の回答(1件)

0

whileやforは条件分を満たすとき次の命令文を実行する です。 条件文はどこか?と言われれば while (a) for(; (a); ) (a)の部分になります。 じゃあ質問文の場合はどうみるのか? ですが C言語の仕様として 0 ならTrue それ以外ならFalse と判定する仕様があります。 これが文字列(char配列)に当てはめた場合 scanf() で取り込んだ時にデリミタ(終端文字:最後をあらわす文字)として'\0'(null : データ上はcharの値が0)が付加されるのでFalseと判定されます。