C语言的问题,字符串数组初始化 a[30]={\0}、a[30]={0}、a[30]={"0"}

C语言的问题,字符串数组初始化
a[30]={\0}、a[30]={0}、a[30]={"0"}C语言的问题,字符串数组初始化
a[30]={\0}、a[30]={0}、a[30]={"0"}
这三个写法都对吗,而且意思是一样的吗

前面三个是没错,printf错了,a作为一个数组,直接用a表示数组指针而已。 a等效于 &a[0]。
要打印整个数组,应该这样
int i;
for(i=0;i<100;i++)
{
printf("%d \n",a[i]);
}
温馨提示:内容为网友见解,仅供参考
第1个回答  2017-07-24
第一个写法错误,会有编译错误的,第二个写法也不对,但是编译不会报错,数组还是没有初始化,第三个是初始化数组,只是a[0]="0"。追问

正确的写法是什么样的,是
a[30]={'\0'}这样吗

追答

这个初始化跟没初始化是一样的,每一个字符串数组初始化的时候自动在末尾加这个的,要是初始化的话,就用双引号里面加你要的内容

本回答被提问者和网友采纳

C语言的问题,字符串数组初始化 a[30]={\\0}、a[30]={0}、a[30]={"0"}
int i;for(i=0;i<100;i++){ printf("%d \\n",a[i]);}

C语言的问题,字符串数组初始化 a[30]={\\0}、a[30]={0}、a[30]={"0"}
第一个写法错误,会有编译错误的,第二个写法也不对,但是编译不会报错,数组还是没有初始化,第三个是初始化数组,只是a[0]="0"。

c语言中怎么把一维数组初始化为全零啊,不用循环
1.int arr[10]={0};如果只对数组的一部分进行初始化,则编译器将把其他元素设置为0。因此,当只将第一个元素初始化为0时,编译器会自动将其他元素设为0 (就像前一句说的那样)。2.int arr[31]={};3.用memset函数在程序开始时初始化数组。比如:int arr[1024];memset(arr, 0, 1024); \/\/...

C语言字符数组如何初始化?
C语言允许用字符串的方式对数组作初始化赋值。例如:static char c[]={'c',' ','p','r','o','g','r','a','m'}; 可写为:static char c[]={"C program"}; 或去掉{}写为:static char c[]="C program";当对全体元素赋初值时也可以省去长度说明。例如:static char c[]={`...

C语言编程:有n个人围成一圈,按顺序从1到n编号。从第一个人开始,报到3...
int a[30]={0};printf("请输入有几个人玩游戏:");scanf("%d",&n);for(i=0;i<n;i++){ a<i>=1;\/\/1代表活着,0代表出局 } for(i=1;i<4;i=i%3+1)\/\/控制i的值在[0,3]{ if(3==i&&a[j]!=0){ a[j]=0;printf("%d号玩家出局\\n",j+1);k++;if(n-1==k)brea...

c语言问题 高手帮忙 字符数组 问题空字符'\\0' 是空格吗
空格字符 ' ' 用 %d 形式输出,是一个数值32。'\\0' 是字符串结束标记,strlen(c) 长度计算,只计算到 '\\0' 以前那个字符。'\\0' 是字符串结束标记,%s输出 只输出到 '\\0' 以前那个字符。=== '\\0', ' ' 的不同,我们用下面输出方法可以看出。include<stdio.h> int main(){ char c[...

C语言定义字符型数组时,两种初始化方式的区别?
这二种初始化方式的区别在于第一种方法是存储了5个字节的内容,即能看到的个字母,外加一个字符串结束符'\\0'。这样才能正确地以%s的形式来输出这个字符串;而第二种方法则是只存储了4个字母,但是却没有字符串结束符,所以它不能以%s的形式正确输出。如果也要以%s的形式输出这个字符串,那就应该...

c语言问题?
一、你的表述不清楚,因为字符变量和字符串变量是存放字符的,所以不管赋值还是初始化,都要放上一个字符。1、在c语言中,字符是用单引号括起来的一个字符,如'a'、'8'、'#'等。2、在c语言中,字符还可以是用转义符引导的一个或几个字符,如'\\n'、'\\0'、'\\%'以及'\\040'或'\\x30'等等,...

c语言,字符数组中最后一个字必须为‘\\0’,为什么错?
C语言规定了一个“字符串结束标志”,以字符'\\0'作为结束标志 。例如:char a[8]={'i','l','o','v','e','y','o','u'};把8个字符依次分别赋给c[0]~c[7]这8个元素。这样的字符数组长度为8,并没有在最后添加'\\0'符号,但其初始化是完全正确的。

【C语言】初始化数组,C语言中初始化特定列表和元素!
数组的其他 4 个元素会被初始化为 0,按照本例情况,为{0,""}。可以利用字符串字面量来初始化数组 char、wchar_t、char16_t 或 char32_t。借助于 C99 新增的元素指示符(element designator),可以把初始化器关联到特定的元素。当需要把特定的元素与初始化器关联时,将其索引值放在方括号内。

相似回答