C语言 求教:这是什么错误?如何修正?error c2228
发布网友
发布时间:2023-08-22 12:50
我来回答
共3个回答
热心网友
时间:2023-08-31 23:29
char * reverse1(char *) 这样声明没问题,但是这是在定义函数 char * 后面跟上一个参数。
比如 char * reverse1(char * ss) ,然后end=char*.length(); 改成end=ss->length();追问int strlen1(const char *s)
{int t=s.length();
return t;}
这段函数提示E:\16014113\1\1.cpp(7) : error C2228: left of '.length' must have class/struct/union type
是什么原因?
追答你好好看一下结构体和指针的运用,现在说了你也不清楚
热心网友
时间:2023-08-31 23:29
你程序开头的s是一个字符指针,他没有成员函数s.length()。追问int strlen1(const char *s)
{int t=s.length();
return t;}
这段函数提示E:\16014113\1\1.cpp(7) : error C2228: left of '.length' must have class/struct/union type
是什么原因?怎么改?菜鸟求教~
追答你想想,如果直接用s.length都求出来了,你这个函数有何意义?你写成这样吧:
int strlen1(const char *s)
{
int k=0;
while(s[k]!=0)
k++;
return k;
}
热心网友
时间:2023-08-31 23:30
在这条语句: int t=s.length()中,s为一个const char *类型,如果s为一个类,结构体或者联合的时候才可以这样使用 s.length()追问int strlen1(const char *s)
{int t=s.length();
return t;}
这段函数提示E:\16014113\1\1.cpp(7) : error C2228: left of '.length' must have class/struct/union type
是什么原因?