char汉子字符串长度
时间: 2023-09-26 17:11:43 浏览: 42
在 C 语言中,char 类型的字符串长度可以使用 strlen 函数来获取。例如:
```c
char str[] = "你好,世界!";
int len = strlen(str);
printf("字符串长度为:%d\n", len);
```
输出结果为:
```
字符串长度为:7
```
需要注意的是,上述代码中的字符串是使用 UTF-8 编码的,每个汉字占用 3 个字节。如果使用其他编码方式,汉字的字节数可能不同,因此长度计算也会不同。
相关问题
C++输出char*字符串的长度
可以使用C++标准库中的strlen函数来计算char*类型的字符串的长度,例如:
```cpp
char* str = "Hello World!";
int len = strlen(str);
cout << "字符串\"" << str << "\"的长度为:" << len << endl;
```
输出结果为:
```
字符串"Hello World!"的长度为:12
```
注意,strlen函数计算的是字符串中字符的个数,不包括字符串末尾的空字符('\0')。
用char和while求字符串长度
字符串长度可以使用字符数组和 while 循环来求解。具体方法是,从字符串的第一个字符开始遍历,直到遇到字符串的结尾符 `\0`,计算遍历过的字符个数即可。
示例代码如下:
```c
#include <stdio.h>
int main() {
char str[] = "hello world";
int len = 0;
while (str[len] != '\0') {
len++;
}
printf("字符串长度为:%d\n", len);
return 0;
}
```
输出结果为:
```
字符串长度为:11
```
其中,`str[len]` 表示字符串 `str` 的第 `len` 个字符,初始值为第一个字符。当它不等于结尾符 `\0` 时,说明还没有遍历完整个字符串,因此将 `len` 自增 1,继续循环。当它等于结尾符 `\0` 时,说明已经遍历完整个字符串,此时 `len` 的值就是字符串的长度。