C语言字符串
C语言字符串本质是使用字符数组来存储的。
#include <stdio.h>
int main() {
"jake";
// "jake" = 'j'+"a"+'k'+'e'+'\0'
// char name[] = {'j', 'a', 'k', 'e', '\0'};
char name[] = "jake";
// int printf(const char * __restrict, ...)
printf(name); // 默认只支持字符传常量 所以传入数组变量会有警告
}
C语言字串字符细节
#include <stdio.h>
int main() {
char name[8] = "it";
}
补充:如果字符数组结尾元素不是"\0",那么这个字符数组不能说是字符串,只是一个普通的字符数组。
strlen()函数
strlen函数:计算字符串长度
- 计算的是字符,不是字数
- 计算的字符不包括\0
strlen函数声明在string.h
文件中
#include <stdio.h>
// strlen函数声明在string.h文件中
#include <string.h>
int main() {
char name[] = "it好";
int size = strlen(name);
}
strlen本质是从字符数组的首地址开始数字符,知道遇到\0结束。因此也可以说\0是字符的结束标记