C言語なら俺に聞け! Part 99
■ このスレッドは過去ログ倉庫に格納されています
0732デフォルトの名無しさん
05/01/20 23:50:22if (strlen(cycleno) > sizeof(cycleno)) {
printf("strlen(cycleno) %d\n",strlen(cycleno));
printf("sizeof(cycleno) %d\n",sizeof(cycleno));
printf("cycleno %s\n",cycleno);
}
/********* 出力 *********/
strlen(cycleno) 16
sizeof(cycleno) 10
cycleno 1234567890慎
質問です。
上記の様に、strlen()で末尾にNULL文字の無い文字列を調べた時
訳分からん値が返ってくる件についてなんすが
これってNULL文字が検出されるまで
メモリ内の無関係な隣りの領域まで読み込んでるって解釈でよいのですか
また、%s出力に関しても同義ですか
あと、上記の解釈で正しいとすれば、仮にNULL文字がたまたまずっと
検出されなかったとすると、永久に読み込みが走るのですか
■ このスレッドは過去ログ倉庫に格納されています