検索

ホームページ  >  に質問  >  本文

C++中const char[] 为什么不能用strlen()?

如题所示,为什么字符串加了const就会报错,去掉const就能过?

#include <iostream>
#include <stdio.h>
#include <string.h>

using namespace std;

int main()
{
    const char letter[] = "`1234567890-=QWERTYUIOP[]\\ASDFGHJKL;'ZXCVBNM,./";

    cout<<strlen(letter)<<endl;

    return 0;
}
迷茫迷茫2804日前964

全員に返信(3)返信します

  • ringa_lee

    ringa_lee2017-04-17 15:09:58

    エラー メッセージを投稿して確認してください。コンパイル後に Mac および Centos で次のコマンドを実行するのが通常です。

    リーリー

    返事
    0
  • 阿神

    阿神2017-04-17 15:09:58

    どのコンパイラを使用していますか? GCC 6.2 は正常に動作します。

    返事
    0
  • 迷茫

    迷茫2017-04-17 15:09:58

    皆さん、ありがとうございます。プロジェクトで 2 つの新しい main 関数を作成したため、main 関数で間違いが発生しました。これが原因でこのエラーが発生しました。誠にありがとうございます

    返事
    0
  • キャンセル返事