有人可以解释为什么我在使用以下 g++ 编译器编译源代码时出现此错误
#include <cstdio>
#include <string>
using namespace std;
int main()
{
char source_language[50];
scanf("%16s\n",source_language);
int length = sizeof(source_language);
int sizeofchar = strlen(source_language);
printf("%d\n",sizeofchar);
}
这给了我以下错误
test.cpp:在函数'int main()'中:
test.cpp:31:错误:未在此范围内声明“strlen”
当我将其更改#include <string>
为 #include <string.h>
or#include<cstring>
时,它工作正常,我需要弄清楚使用#include<string>
and有什么区别#include<string.h>
。非常感谢任何帮助