:\FunshionMedia\C语言程序\Microsoft Visual Studio\c++1\C++面向对象\第一课时\实验0001\wy.cpp(9) : error C2664: 'strlen' : cannot convert parameter 1 from 'int [20]' to 'const char *'Types pointed to are unrelated; conversion requires reinterpret_cast, C-style cast or function-style castlwy.c执行 cl.exe 时出错.实验0001.exe - 1 error(s), 0 warning(s),求高人帮忙?谢谢#include<iostream>#include<string>#include<cstring>using namespace std;void main(){int a[20]={1,2,3,4,5,6,7};cout<<strlen(a)<<endl;}
1 回答
慕桂英3389331
TA贡献2036条经验 获得超8个赞
strlen的参数必须是字符数组类型(const char *)的。
你给它传一个int 数组,当然会出错了。
原型:extern unsigned int strlen(char *s);
下面这样就不会出错了。
char str[20] = "0123456789";
cout<<strlen(str)<<endl;
输出的应该是10.
另外,cout你也写错了。
不是>>,而是<<.
添加回答
举报
0/150
提交
取消