Ⅰ c语言 &a和a的区别搞不明白
首先,a是一个变量,储存着值。&a是常量,是变量a的内存地址。一般的&a是用来赋值给指针的(int ×p=&a ;),或者是作为函数的参数传递(地址传递)。比如scanf中:scanf("%d",&a);
如果输出,也并不是按照你说的那样,比如a是字符型:putchar(a) ;a是整形:printf(“%d”,a) ;
所以输出是用a还是&a,要看函数的参数类型是变量还是指针。
Ⅱ C语言中'a'和"a"有什么区别
1、本质区别
双引号里面的是字符串, 而单引号里面的代表字符。
2、输出区别
str = “a”输出的就是a这个字母;
str = ‘a’输出的测试65
3、底层区别
用单引号引起的一个字符实际上代表一个整数,整数值对应于该字符在编译器采用的字符集中的序列值。
(2)c语言中a和a的区别扩展阅读:
C语言是一个有结构化程序设计、具有变量作用域(variable scope)以及递归功能的过程式语言。
C语言传递参数均是以值传递(pass by value),另外也可以传递指针(a pointer passed by value)。
不同的变量类型可以用结构体(struct)组合在一起。
只有32个保留字(reserved keywords),使变量、函数命名有更多弹性。
部份的变量类型可以转换,例如整型和字符型变量。
通过指针(pointer),C语言可以容易的对存储器进行低级控制。
预编译处理(preprocessor)让C语言的编译更具有弹性。
Ⅲ 在c语言中 &a与a的区别为什么说&a是常量谢谢!
C语言中,只要出现了
int
a;或者double
a;之类的语句(也就是定义变量a),那么系统会分配一定的内存空间(空间大小视变量类型而定,如int型为4个字节),这一段内存空间是有地址的。
例如
int
a;
系统会分配4个字节的空间给a,假设这四个字节的地址分别是2000,2001,2002,2003.
好!
那么&a的意思就是这段空间的首个字节的地址,即2000.
此时,不管用什么值赋予给a,a的值变化了,但是地址(也就是系统分配给a的内存空间)没有变化,还是2000--2003这四个字节,所以&a是常量。
Ⅳ 在c语言中“a”和‘a’的区别是
C语言中没有String的类型,不过是有String这个概念,C语言的字符串也是char类型存储。
C语言中"a"表示一个字符串,在内存中存储为 'a' '\0' 两个字符,大小为2字节。
C语言中'a'表示一个字符,在内存中存储为 'a' 一个字符,大小为1字节。
扩展知识:
在C语言中可以用char类型的指针来存储任意长度的字符串!比如:char * myStr="Hello,C!"。
如果你用char型数组来存储字符串,请注意你的数组的长度要比你将要存储的字符串长度至少大1.
Ⅳ c语言中,a 和a[] 有什么区别
像程序里面的str1[5]表示一个长度为5的字符数组,str1表示数组的首地址,也是第一个元素的地址
Ⅵ C语言中符号“a”和‘a’的区别是
呃,,,楼上的各位都没有答到本质上 从本质上讲,“a”是一个指针常量,而'a'则是一个数值。也就是说,在编译器看来,“a”的值是一个地址(比如:0x84f39ea0),而'a'的值则是a的ASCII码(即97)。楼主用printf打印这两个值看看就知道了 另外,当“”里的字符串有多个字符时,它指向字符串的第一个字符。
Ⅶ C语言中符号a和‘a’的区别是
a是变量,在程序运行过程中值是可以改变的
'a'是字符型常量,在程序运行过程中没办法改变,只能读取
Ⅷ c语言 &a和a的区别搞不明白
首先,a是一个变量,储存着值。&a是常量,是变量a的内存地址。一般的&a是用来赋值给指针的(int
×p=&a
;),或者是作为函数的参数传递(地址传递)。比如scanf中:scanf("%d",&a);
如果输出,也并不是按照你说的那样,比如a是字符型:putchar(a)
;a是整形:printf(“%d”,a)
;
所以输出是用a还是&a,要看函数的参数类型是变量还是指针。
Ⅸ c语言'a'和"a"有什么区别
1、本质区别
双引号里面的是字符串, 而单引号里面的代表字符。
2、输出区别
str = “a”输出的就是a这个字母;
str = ‘a’输出的测试65
3、底层区别
用单引号引起的一个字符实际上代表一个整数,整数值对应于该字符在编译器采用的字符集中的序列值。
(9)c语言中a和a的区别扩展阅读:
C 语言中,逗号(,)也可以是运算符,称为逗号运算符(Comma Operator)。逗号运算符可以把两个以上(包含两个)的表达式连接成一个表达式,称为逗号表达式。其一般形式为:
子表达式1, 子表达式2, ..., 子表达式n
例如:a + b, c = b, c++
逗号运算符的优先级是所有运算符中级别最低的,通常配合 for 循环使用。逗号表达式最右边的子表达式的值即为逗号表达式的值。上例中,c++ 的值(c 自增之前的值)即为该表达式的值。
逗号运算符保证左边的子表达式运算结束后才进行右边的子表达式的运算。也就是说,逗号运算符是一个序列点,其左边所有副作用都结束后,才对其右边的子表达式进行运算。因此,上例中,c 得到 b 的值后,才进行自增运算。
Ⅹ C语言中'a'和a有什么区别
引号引起来说明是字符。
不因起来说明是变量名。
printf("%c",a);
printf("%d",'a');
比较两者的区别。
上面是a的变量内容。
而下面是a的ASCII码,97.