lzth.net
当前位置:首页 >> C++中strCmp() 的参数可以是string类型吗? >>

C++中strCmp() 的参数可以是string类型吗?

函数原型:int strcmp(const char *s1,const char *s2);参数是const char*,或者char*不能是string类型,但是可以通过string的成员函数c_str()把string转换为const char *

不行,string是关键词!不能作为参数引用

函数原型:int strcmp(const char *s1,const char *s2); 参数是const char*,或者char* 不能是string类型,但是可以通过string的成员函数c_str()把string转换为const char *

对,不能是string类型,只能是char *.strcpy是C语言标准库函数,原型声明:char *strcpy(char* dest, const char *src);

string就是一个类,在std命名空间中

strcmp 是用来比较两个C字符串(即char数组),参数类型都是char*,你拿两个string类型的变量作为参数,当然出错啦.比较两个string类型变量是否相等,不需要用strcmp,直接用==就可以了.

strcmp,为c语言中的字符窜拷贝函数;上面你给的是c++代码,由于c++兼容c,所以,在此处用上了strcmp();关于strcmp:1.在c语言中,如果要用到它,者要在预定义中,包涵头文件,string.h,即:#include<string.h>2.strcmp(),有两个

比较的是字符串的大小,按ASCII码来比较的.具体比较方法书上会说明啊.

C语言中没有string类型,字符串是用字符数组实现的C++中有string类,可以定义string对象,并对其进行处理.

<p>函数strcmp(s1,s2)的参数s1和s2都是C风格字符串,你的代码里面strcmp(list[i],nominees[j].name)第一个参数list[i]是string类,所以你的程序会报错.</p> <p>string类提供了一个成员函数c_str(),它的作用就是返回C风格的字符串,以'\0'结束.所以你的程序可以这么改即可:strcmp(list[i].c_str(),nominees[j].name).</p> <p></p>

网站首页 | 网站地图
All rights reserved Powered by www.lzth.net
copyright ©right 2010-2021。
内容来自网络,如有侵犯请联系客服。zhit325@qq.com