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

来源:互联网 发布:安卓紫外线灯软件 编辑:程序博客网 时间:2024/05/17 19:16

問: 请问如何可将 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

*/

原创粉丝点击