48 ----字符0
65----A 差32
97----a
char a[]="c++"; cout<2.2字符数组的输入与输出
scanf 输入数组不用加& 区地址符号,本身就是地址。2.3字符数组输出易错
从s[1]开始记录数据,s[0]没有数据。 数组下标从1开始
从s[2]开始记录数据。s[0],s[1]没数据。对于未定义长度的字符数组和已经定义长度的字符数组。
(1)已经定义长度的会按预期输出。长度未字符长度+1( )
(2)对于没有定义长度的,接着下面尾部含有 的输出
(3)使用字符数组结尾一定写 ,否则程序会有歧义。(1)
#include#include using namespace std; int main() { //已经定义长度为4 char a[4]={'c','+','+'}; char b[]={'c','+','+',' '}; char c[]="c++"; cout< 结果
(2)#include#include using namespace std; int main() { char a[]={'c','+','+'}; char b[]={'c','+','+',' '}; char c[]="c++"; cout<
结果以 结尾为分割。
(3)歧义#include#include using namespace std; int main() { char a[]={'c','+','+'}; int d=66; char b[]={'c','+','+',' '}; char c[]="c++"; cout< 2.4 字符数组任意位置输出
int d=66; 则最后输出了B。对于字符数组末尾一定要加2.5 scanf读入字符数组的局限性
当遇到空格、回车、文件结束符时就不能读了。
如何读入一行 且行内包含空格。
使用fgets读入字符数组。fgets(字符数组名,最多几个字符,stdin)
getline()读入字符串
getline(cin,字符串名称)



