土曜の昼、学校帰りの昼メシの思い出

調べても見つかりませんでした。

A 回答 (3件)

>私が知りたいのは文字数ではなくバイト数です。


実際に、自分でプログラムを作って動作確認
しましたか?

strlen関数が返すのは、指定した文字列の位置
から'\0'までのバイト数です。
#長さに'\0'は含みません
半角文字列の時は文字数=バイト数になりますが
漢字が含まれる場合は、逆に文字数=バイト数に
なりません。
    • good
    • 0
この回答へのお礼

回答ありがとうございます。
確認せずに決めつけていました。すみません。
今プログラム組んでバイト数を返すことを確認したところです。
マルチバイト文字列の文字数取得にmb_strlenという別の関数がありました。

お礼日時:2013/10/26 20:41

>私が知りたいのは文字数ではなくバイト数です。


あなたが理解できてないだけ
該当関数の戻り値は 文字数=バイト数です

この回答への補足

回答ありがとうございます。
またまた情報不足で恐縮ですが、日本語を含んだ文字列を扱おうとしています。
その等式はUTF8の半角文字の文字列のみでしか成立しません。

補足日時:2013/10/26 20:46
    • good
    • 0

関数名:strlen


仕様:int strlen(astr)
char *astr;

この回答への補足

誤解しやすい質問ですみません。
私が知りたいのは文字数ではなくバイト数です。

補足日時:2013/10/26 16:04
    • good
    • 0

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


おすすめ情報