찾다

 >  Q&A  >  본문

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;
}
迷茫迷茫2767일 전953

모든 응답(3)나는 대답할 것이다

  • ringa_lee

    ringa_lee2017-04-17 15:09:58

    把错误信息贴出来看看,在Mac和Centos下执行下面命令编译后执行是正常的

    g++ test.cpp -o test
    ./test

    회신하다
    0
  • 阿神

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

    你用的什么编译器。GCC 6.2正常。

    회신하다
    0
  • 迷茫

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

    谢谢各位了,是我搞错了主函数,我在一个项目里新建了两个主函数,导致了这个错误。非常感谢

    회신하다
    0
  • 취소회신하다