c语言字符串不为空
时间: 2024-10-30 21:07:14 浏览: 9
C语言字符串快速压缩算法代码
5星 · 资源好评率100%
在C语言中,判断字符串是否为空通常是指检查字符串常量或者动态分配的字符数组最后一个元素之后是否有'\0'字符。如果字符串结束标志'\0'存在,那么可以认为该字符串非空;反之,如果遇到'\0'而未达到数组结束,或者整个数组都没有'\0',则表示字符串为空。
下面是一个简单的函数示例,用于检查字符数组是否为空:
```c
#include <stdbool.h>
#include <stdio.h>
bool is_string_empty(char *str) {
if (str == NULL) { // 如果指针为空,直接返回true
return true;
} else if (*str == '\0') { // 检查第一个字符是否为结束符
return true;
} else {
return false; // 非空字符串,返回false
}
}
int main() {
char str1[] = "Hello";
char str2[5]; // 空字符串
printf("str1 is empty? %s\n", is_string_empty(str1) ? "yes" : "no");
printf("str2 is empty? %s\n", is_string_empty(str2) ? "yes" : "no");
return 0;
}
```
在这个例子中,`is_string_empty` 函数会检查传入的字符串是否为空,如果是,则返回 `true`,否则返回 `false`。
阅读全文