安徽城乡建设厅官方网站,做网站合伙怎么分,邦邻网站建设,品牌推广型网站一#xff0e;一维数组1. 初始化方法第一种#xff1a;完全初始化。依次赋值如#xff1a;a[5] {2#xff0c;3#xff0c;4, 5, 6}#xff1b;a[] {1#xff0c;2, 3, 4, 5, 6};第二种#xff1a;不完全初始化。初始化式中的值从a[0]开始#xff0c;依次向后赋值一维数组1. 初始化方法第一种完全初始化。依次赋值如a[5] {234, 5, 6}a[] {12, 3, 4, 5, 6};第二种不完全初始化。初始化式中的值从a[0]开始依次向后赋值不足的默认用0填充赋值如a[5] {4, 5, 6}第三种间隔初始化。未赋值的默认用0填充赋值如:a[5]{100, [4] 99};a[5]{[1]100, [4] 99};a[3000]{[5] 200};注数组初始化之后不能再整体重新赋值但可以单独重新赋值2. 指针与数组的结合数组名数组名表示数组的首元素首地址因此作右值可以直接赋值给指针。如果有 int a[5];则 a和a[0]都表示数组首元素a[0]的首地址。指向首元素而a则表示数组的首地址。指向整个数组3. 用printf输出字符串字符数组如#includeint main (int argc, char *argv[]){char a[] m\\0yp;char* p myp;char* p1 my\0p;/*双引号做了3件事1)申请了空间(在常量区)存放了字符串2) 在字符串尾加上了\03)返回首元素的首地址你这里就是 返回的地址 赋值给了 p*/printf(%s\n, a);//%s对应的是一个char*类型的变量输出的是从这个地址开始直到0/结束的字符//结果输出的是m\0ypprintf(%s\n, p);//结果输出的是mypprintf(%s\n, p1);//结果输出的是myreturn 0;}4、数组中几个关键符号a a[0] a a[0]的理解前提是 int a[10]结合左值右值去理解(1)a不能做左值因为数组在初始化之后就不能进行整体操作了做右值表示首元素的首地址等同于a[0](2)a[0]做左值时表示数组第0个元素对应的内存空间做右值时表示数组第0个元素的值(3)a不能做左值a做右值时表示整个数组的首地址。(4)a[0]不能做左值做右值时表示首元素的首地址等同于a。声明本文于网络整理版权归原作者所有如来源信息有误或侵犯权益请联系我们删除或授权事宜。