字符数组初始化时只能在定义时初始化 是什么意思
4个回答
展开全部
1、变量的初始化有两种:
一种是先定义变量,再给变量赋初始值,有的书上说这已经不叫初始化叫赋值。
int a;
a=0
另一种是定义变量的同时给变量赋初始值,有的书上只把这种定义称为变量的初始化。
int a=0;
2、数组的初始化只有第二种情况可以一次赋多个元素的,以后只能单个元素赋值。
3、字符数组初始化时只能在定义时初始化的意思是:
char c[50]={"Hello world."};//是对的。
char c[50];
c[50]={"Hello world."};//是错误的。
char c[50];//后只能单个元素赋值。
c[1]='H';
c[2]='e';
c[3]='l';
...
c[10]='d';
c[11]='.';
c[12]='\0';
一种是先定义变量,再给变量赋初始值,有的书上说这已经不叫初始化叫赋值。
int a;
a=0
另一种是定义变量的同时给变量赋初始值,有的书上只把这种定义称为变量的初始化。
int a=0;
2、数组的初始化只有第二种情况可以一次赋多个元素的,以后只能单个元素赋值。
3、字符数组初始化时只能在定义时初始化的意思是:
char c[50]={"Hello world."};//是对的。
char c[50];
c[50]={"Hello world."};//是错误的。
char c[50];//后只能单个元素赋值。
c[1]='H';
c[2]='e';
c[3]='l';
...
c[10]='d';
c[11]='.';
c[12]='\0';
展开全部
怎么说呢,在最初定义的时候,系统会分配给你一个空间,并把你初始化的值放进去,但是如果你直接将数组指向某个字符串这是不可以的,因为数组名是一个常量,它指向定义时申请的空间。
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
在定义时可以整体一起初始化,定义之后需要对每一个元素 单独 赋值
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询