求解释c语言中char a[2]中的2是什么意思 是指能输入的最大字符数还是什么?最多能输几个字符和字符组

2是指能跑起来后最多只能输入2个字符吗 还是什么 具体解释下[2]能输入几个字符和字符组 百度上的我都看过啦 看不懂 复制过来的就不用了

表示字符型数组a中可以存放2个字符,第1个字符用a[0]访问,第2个字符用a[1]访问,最大下标可以用0~(2-1)范围的。比如a[100]合法下标范围是0~99;
当a需要保存字符串时,需要注意,字符串必须以0值结尾,表示成字符就是'\0',而且这个0不算在字符串中的字符,那么你用a数组最多只能保存n-1个字符组成的数组,如果是char a[2];的话只能保存一个字符组成的字符串;如:char a[20]={ "Hello !" };或者char a[20]={ 'H','e','l','l','o','\0' };这时字符串占用6个数组元素,但字符串长度为5,如果你用strlen语句计算的长度也为5,你最多可在这个数组中保存长度为19的字符串,需要自己在末尾添加0或'\0',前面语句char a[20]={ "Hello !" };是编译器自动帮你加了结尾符0;
当懒得数字符串中字符个数时,也可以让编译器帮你数:char a[]={"Hello"};这与你自己写:char a[6]={ "Hello" };是一样的。
温馨提示:内容为网友见解,仅供参考
第1个回答  2013-10-15
char a[2];
这是声明。声明变量 a 是 char 型数组,有2个元素。
语句里 写 a[0] 表示它是 char 型数组a 里的 第一个 元素
a[1] 是 char 型数组a 里的 第二个 元素。
语句例子:
a[0]='A'; a[1]='x';
printf("%c %c\n",a[0],a[1]);

char a[2]; 也可以看成 是 字符串 变量 a。 由于 字符串要用1个单元存放字符串 结束符,所以只能 存放 长度为 1 的字符串。
语句例子:
strcpy(a,"A");
printf("%s\n",a);
-----
声明,带初始化写法:
char a[2]={ 'A', 'x'}; // 初始化 a[0]='A'; a[1]='x'; -- 单引号括起的是 字符常量
char a[2]="A"; // 初始化 字符串 "A" -- 双引号括起的是 字符串,含 字符串结束符。本回答被网友采纳
第2个回答  2013-10-15
【2】就是数组能输入2个字符。追问

能解释下什么是数组吗 谢谢啦

追答

通俗的说就是能连着存放同一类型变量的数据类型,比如int a[10],就能连着放10个整形值,char a[5]就能连着存放5个字符

求解释c语言中char a[2]中的2是什么意思 是指能输入的最大字符数还是...
表示字符型数组a中可以存放2个字符,第1个字符用a[0]访问,第2个字符用a[1]访问,最大下标可以用0~(2-1)范围的。比如a[100]合法下标范围是0~99;当a需要保存字符串时,需要注意,字符串必须以0值结尾,表示成字符就是'\\0',而且这个0不算在字符串中的字符,那么你用a数组最多只能保存n-...

在c语言中,char a[2] ,能存几个字符?(一个还是两个字符)
可以存2个字符 不过如果存字符串,就只能有一个有效字符了.另一个字符是结束符\\0

c语言中,int main(int argc, char *argv [])的2个参数是什么意思?
以你的程序,程序的可执行文件应是D:\\1.exe,你在命令行输入的内容是"1 2",因此argc的值是2,表示有2个字符串,而argv[0]的值是"1",argv[1]的值是"2"。经程序计算,argc<2为假,atoi("2")的值为2并赋值给times,2<1也为假,执行else分支,循环2次输出你看到的字符串 附:如果你...

请教一个C语言问题 char a[2]="我" 数组里是汉字"我"的什么码(区位吗...
char只能是8位的字符,不能是16位的汉字

c语言中字符最大是多少?
编程中,我们常用的还是10进制.毕竟C\/C++是高级语言。比如: int a = 100,b = 99; 不过,由于数据在计算机中的表示,最终以二进制的形式存在,所以有时候使用二进制,可以更直观地解决问题。但二进制数太长了。比如int 类型占用4个字节,32位。比如100,用int类型的二进制数表达将是: 0000 0000 0000 0000 0110 ...

1.有char a[2][10],则以下能正确输入字符串的语句是?
A 补充:A.a[1]表示的是char B.a[2]没有声明 C.a[2][10]没有声明 D.a[2][10]没有声明 再补充 = =:gets和printf都要求传入char *类型的参数 C.如果改成&a[2][9]应该是能通过的 D.是char类型,改成啥都不好使

C语句 char *aa[2]={"abcd","ABCD"};以下叙述正确的是?
所以A错,B说aa是指针变量,也错了,因为aa是字符指针数组。C说含有4个字符的一维数组的首地址,错在4,应该是5个字符。C语言中字符串会在结尾增加'\\0'字符表示字符串结束,所以是5个字符。D说存放的是'a'和‘A’的地址,是正确的因为数组的首地址,也就是第一个字符的地址。

char的范围是什么?
char是C语言中的一种基本数据类型,用于表示字符。它占用一个字节(8位),可以存储ASCII码对应的字符。二、char类型的取值范围 char类型可以取-128到127之间的整数值,包括负数和正数。这个范围是由char类型的编码方式决定的,常见的编码方式有ASCII码和Unicode码。1、ASCII码:ASCII码是一种字符编码标准...

c语言字节是什么意思(c语言字节是什么)
c语言中的四个字节是什么意思 字节就是Byte=8bit(位)是计算机存储单位。一个位可以存储0或1.一字节就是8个位。字符在C语言中有两种:1.普通字符,用单引号括起来,如'k','l','a','0'都是(中文字一个算一个字符,但占字母等字符两倍的空间);2.转义字符,前面加\\号,一般是键盘上按不...

argv[2][0]在C语言中是什么意思,为什么是二维的呢
你的argv[2][0]其实指的是传入的第2个参数的第1个字符。继续详细说明一下 argv[0] 指向程序运行的全路径名,也就是你编译出来的exe的程序全路径名 argv[1] 指向在DOS命令行中执行程序名后的第一个字符串 argv[2] 指向执行程序名后的第二个字符串 举个例子,你写了一个helloworld程序 include...

相似回答