64,682
社区成员
发帖
与我相关
我的任务
分享
#include <iostream>
using namespace std;
int main()
{
//声明一点:字符数组,
//1.要考虑多申请一个字符的空间,因为一个字符数组要以‘\0’标志字符串结束
char a1[4] = {1, 2, 3};// char a1[3] = {1, 2, 3};也不算错,但会输出多余的东西直到遇到一个‘\0’结束输出
char a2[4] = {'1', '2', '3'};
//等价于char a2[4] = {'1', '2', '3',‘\0’};char a2[3] = {'1', '2', '3'}也不错!
char a3[4] = "123";//char a3[3] = "123"是错误!因为"123"实质上四个字符!
cout<<a1<<endl;
cout<<a2<<endl;
cout<<a3<<endl;
//2.不用多申请,用sizeof(a) / sizeof(char)形式获取数组实际的大小
char a4[3] = {'1', '2', '3'};
for (int i = 0; i < sizeof(a4) / sizeof(char); ++i)
cout << (int)a4[i] << endl;
char c = 'c',*b = &c;//字符指针,或者字符串指针
cout<<*b<<endl;
b="abc";
cout<<b<<endl;
char *b1[2];//字符串指针数组
b1[0]=b;
cout<< b1[0]<<endl;
b1[1]=b;
cout<< b1[1]<<endl;
char b3[2][2] = {'0','1','2','3'},(*b2)[2];//字符串指针数组
b2 = b3;
for(int i = 0; i < 2; i++)
{
for(int j = 0; j < 2; j++)
cout<<b2[i][j];
cout<<endl;
}
return 0;
}
#include <iostream>
using namespace std;
int main()
{
char a1[4] = {'1', '2', '3'};
cout << a1 << endl;
for (int i = 0; i < sizeof(a1) / sizeof(char); ++i)
cout << (int)a1[i] << endl;
return 0;
}
#include <iostream>
using namespace std;
int main()
{
char a1[3] = {1, 2, 3};
for (int i = 0; i < sizeof(a1) / sizeof(char); ++i)
cout << (int)a1[i] << endl;
return 0;
}
char a1[3] = {1, 2, 3};
cout<<a1<<endl;
char a2[3] = {'1', '2', '\0'};
cout<<a2<<endl;
char a3[4] = "123";
cout<<a3<<endl;
cin.get();