用 if 提 msg[] 使用 strcmp , stricmp 例子 // + strcmpi

问: 请问如何可将 char msg[]="text" 中,
msg 里的 text,放入 if()中判断控制?

例如 : if( msg!= text){ printf ...; }


答: 可使用 strcmp , stricmp 解决

如果大小敏感,用strcmp
如果不敏感,用stricmp
这是标准C字符串函数

使用方法可以百度
程序基本如下:

############################################################

if(strcmp(msg, "text") != 0)
printf("不相等");
############################################################
不忽略大小写

strcmp ,strncmp


忽略大小写

windows平台:
函数:stricmp(char *str1, char *str2), strnicmp(char *str1, char *str2, size_t n).

Linux平台:

函数:strcasecmp(char *str1, char *str2), strncasecmp(char *str1, char *str2, size_t n)

############################################################

字符串比较需要使用字符串比较函数strcmp,不能直接用==来判断。strcmp返回0表示相同,否则不相同

############################################################

建议帖主通读include\string.h中的内容。

############################################################

字符串比较操作
if( (strcmp(msg, "text") == 0 ) // 表示相等
  
字符串拷贝操作
(strcpy(msg, "text"); //拷贝操作
############################################################

使用strcmp或者strncmp都可以,第二个函数能够精确到比较字符的个数。

############################################################

另外补充下返回值为0表示相等

############################################################

/*

 thanks all super so much 

感谢各大神人肋力

http://bbs.csdn.net/topics/390583837

*/

发布了6 篇原创文章 · 获赞 0 · 访问量 1万+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章