C++字符数组字符串初始化详解

字符数组的字符串初始化用法,C++里其实挺常见的。像char c[] = "I am a boy";这种写法,省事又直观,编译器会自动在结尾补一个\0,不用你手动算长度,适合静态文本。

字符串和字符数组的区别,其实不少新手都容易搞混。你写char c[10] = "CHINA";,后面的五个字符其实都是\0,ASCII 值为 0,不是'0'也不是空格。调试时一不小心就踩坑,尤其是字符串长度和数组长度没对齐的时候。

字符一个个写的方式,比如char a[] = {'I', ' ', 'a', 'm', ...},你控制力强一些,但可读性就差点意思,适合对字符有需求的场景,比如字符逐个遍历、特殊编码逻辑等。

如果你还不太熟字符数组和字符串的关系,建议看看下面这些资源,挺系统的。尤其是这篇关于区别与应用的,写得还不错,对新手蛮友好。

另外提醒一下:字符串里\0是结束标志,不是空格;'0'的 ASCII 是 48,' '是 32,\0才是 0。搞清楚这点,对你理解底层有。

如果你经常底层字符操作,或者在嵌入式里用 C/C++做 UI/交互,这种字符数组赋值方式你肯定绕不开,早点熟点,写代码能省不少事。

ppt 文件大小:8.66MB