strlen()について
444 ワード
strlen()について、今日問題に遭遇しました.私がテキストを読むとき、strlen()で1行の文字列の長さをlenと算出します.次にstr[len-1]を印刷し、
最後の文字が印刷されると思います.結局それはありません.
そして、strlen()のソースコードを見に行ったところ、
'0'に遭遇したときに配列の長さを返します.私のこの行の文字列の最後の文字は''です.やっとこの疑惑を解消した.
strlen()に対する理解が足りなかったことも反省します.
最後の文字が印刷されると思います.結局それはありません.
そして、strlen()のソースコードを見に行ったところ、
for (char_ptr = str; ((ulong)char_ptr & (sizeof(ulong) - 1)) != 0; ++char_ptr) {
if (*char_ptr == "\0")
return char_ptr - str;
}
'0'に遭遇したときに配列の長さを返します.私のこの行の文字列の最後の文字は''です.やっとこの疑惑を解消した.
strlen()に対する理解が足りなかったことも反省します.