#M8305. 字符数组(字符串)
字符数组(字符串)
字符串
字符串是一个接一个字符的一组字符连在一起(类似于用一根冰糖葫芦串起了很多山楂球),所以字符串的基本组成元素是字符。
字符串的储存
存储字符串比如"mageek"时,有两种不同的方式,一种是字符型数组,另一种是string类。
char a[7] = "mageek";
在字符串中使用标识符'\0'作为结束标志,结束符'\0'也需要占用一个存储位,所以声明数组时长度至少为 7。等同于:
char a[7] = {'m', 'a', 'g', 'e', 'e', 'k', '\0'};
【注意事项】
1.由 n 个字符个数组成的字符串在内存中应占( n+1 )个字节。
2.'0'
代表字符 0,对应ASCII码值为 48,'\0'
代表空字符(转义字符),对应ASCII码值为 0。
输入与输出
方法1:可以使用 %s 或 cin语句 整体输入输出(不保存空白符,如空格、回车、换行符等)
#include<bits/stdc++.h>
using namespace std;
int main()
{
char a[10];
scanf("%s", a); // 无需加 &
// cin>>a;
printf("%s", a);
// cout<<a;
return 0;
}
方法2:读取整行,通过回车键来确定结束
#include<bits/stdc++.h>
using namespace std;
int main()
{
char a[105];
cin.getline(a,100);
cout<<a;
return 0;
}
方法3:利用循环结合下标逐次操作