admin 管理员组文章数量: 887021
2024年1月18日发(作者:创建网站论坛)
c语言字符串判断
标题:C语言中字符串的判断方法及示例
正文:
在C语言中,字符串是由字符组成的字符数组。在进行字符串处理时,常常需要对字符串进行判断操作,例如判断字符串是否为空、是否相等、是否包含某个子字符串等。下面将介绍一些常见的字符串判断方法及示例。
1. 判断字符串是否为空
在C语言中,可以使用strlen函数来判断字符串是否为空。strlen函数可以返回字符串的长度,如果长度为0,则说明字符串为空。
示例代码如下:
```c
#include
#include
int isStringEmpty(const char* str)
{
if(strlen(str) == 0)
{
return 1;
}
else
{
return 0;
}
}
int main()
{
char str1[] = "";
char str2[] = "Hello World";
if(isStringEmpty(str1))
{
printf("str1 is emptyn");
}
else
{
printf("str1 is not emptyn");
}
if(isStringEmpty(str2))
{
printf("str2 is emptyn");
}
else
{
printf("str2 is not emptyn");
}
return 0;
}
```
2. 判断两个字符串是否相等
C语言中,可以使用strcmp函数来判断两个字符串是否相等。strcmp函数会比较两个字符串的每个字符,如果字符都相等,则返回0;如果不相等,则返回一个非0的值。
示例代码如下:
```c
#include
#include
int areStringsEqual(const char* str1, const char* str2)
{
if(strcmp(str1, str2) == 0)
{
return 1;
}
else
{
return 0;
}
}
int main()
{
char str1[] = "Hello";
char str2[] = "World";
char str3[] = "Hello";
if(areStringsEqual(str1, str2))
{
printf("str1 and str2 are equaln");
}
else
{
printf("str1 and str2 are not equaln");
}
if(areStringsEqual(str1, str3))
{
printf("str1 and str3 are equaln");
}
else
{
printf("str1 and str3 are not equaln");
}
return 0;
}
```
3. 判断字符串是否包含某个子字符串
在C语言中,并没有直接提供判断字符串是否包含子字符串的函
数。但我们可以使用strstr函数来判断一个字符串是否是另一个字符串的子串。如果找到了子串,则返回子串在字符串中的首次出现位置的指针;如果没找到,则返回NULL。
示例代码如下:
```c
#include
#include
int isSubstringPresent(const char* str, const char*
substr)
{
if(strstr(str, substr) != NULL)
{
return 1;
}
else
{
return 0;
}
}
int main()
{
char str[] = "Hello World";
char substr1[] = "World";
char substr2[] = "Hi";
if(isSubstringPresent(str, substr1))
{
printf("str contains substr1n");
}
else
{
printf("str does not contain substr1n");
}
if(isSubstringPresent(str, substr2))
{
printf("str contains substr2n");
}
else
{
printf("str does not contain substr2n");
}
return 0;
}
```
以上是C语言中常见的字符串判断方法及示例。通过掌握这些方法,可以方便地进行字符串处理和判断操作。希望对您有所帮助!
版权声明:本文标题:c语言字符串判断 内容由网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:http://www.freenas.com.cn/jishu/1705554137h489681.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论