导航:网站首页 >

C语言中’a’和"a"有什么区别?,c语言中“!a"是什么意思啊

C语言中'a'和"a"有什么区别?,c语言中“!a"是什么意思啊

匿名网友:

1、本质区别双引号里面的是字符串, 而单引号里面的代表字符。

2、输出区别str = “a”输出的就是a这个字母;str = 'a'输出的测试653、底层区别用单引号引起的一个字符实际上代表一个整数,整数值对应于该字符在编译器采用的字符集中的序列值。

扩展资料:C语言是一个有结构化程序设计、具有变量作用域variable scope以及递归功能的过程式语言。

C语言传递参数均是以值传递pass by value,另外也可以传递指针a pointer passed by value。

不同的变量类型可以用结构体struct组合在一起。

只有32个保留字reserved keywords,使变量、函数命名有更多弹性。

部份的变量类型可以转换,例如整型和字符型变量。

通过指针pointer,C语言可以容易的对存储器进行低级控制。

预编译处理preprocessor让C语言的编译更具有弹性。

匿名网友:

1、本质区别 双引号里面的是字符串, 而单引号里面的代表字符。

2、输出区别 str = “a”输出的就是a这个字母; str = 'a'输出的测试65 3、底层区别 用单引号引起的一个字符实际上代表一个整数,整数值对应于该字符在编译器采用的字符集中的序列值。

扩展资料: C语言是一个有结构化程序设计、具有变量作用域variable scope以及递归功能的过程式语言。

C语言传递参数均是以值传递pass by value,另外也可以传递指针a pointer passed by value。

不同的变量类型可以用结构体struct组合在一起。

只有32个保留字reserved keywords,使变量、函数命名有更多弹性。

部份的变量类型可以转换,例如整型和字符型变量。

通过指针pointer,C语言可以容易的对存储器进行低级控制。

预编译处理preprocessor让C语言的编译更具有弹性。

...

匿名网友:

a比a少一维,我具体给你解释下。

几个元素可以组成数组,而几个一维数组可以组成二维数组,如此一直增加维数。

比如说a0=2,a1=1,a2=3,组成一个一维数组,这就是a.但是,你要注意,a不是直接把这些东西都存着的,a只存首地址。

假设定义了一个二维数组a33.这时候a0,a1,a2就不再是元素了,而代表的是一个有三个元素的一位数组,而此时的a就是一个二维数组。

如果感觉这个有点困难没关系,等学习了指针什么的久很好理解这个了。

再说说你给的程序,你是不是在疑问为什么gets)直接给str1 就可以了?还有那个输出函数,为啥只用给str1就可以?这得给存储方式有关,字符串就是字符的二维数组,gets)需要输入字符串的首地址,这个还算好理解,因为你应该学过了scanf)了,二者差不多,关键是为什么输出函数直接就写了str1呢?printf)之前你学的一般都是printf("%d",a1);这种类型的。

这里为啥要填一个地址参数呢?这是因为你前面是%s s代表字符串,字符串本身就是二维的,因此,你当然不能只给他一个单独的元素了,那么,你给了首地址他如何知道你这个字符串是啥呢?因为字符串都是顺序存储的,更重要的是字符串在结尾处有个标志“/0”,因此,你只要给力他首地址,他就知道从哪里开始,从哪里结束了。

纯手打,望~~。

匿名网友:

能具体说说吗?我这样只能猜着回答。

比如你a是个表达式,写在别的表达式里,这样防止出现错误,比如:#define a 1024+6int main(){ int b=a*4; printf("b=%d\n",b); getch(); return 0;}你这样写 就是b=1024+6*4=1024+24=1048;但是 如果你写成 #define a (1024+6) 就不会出现错误了,现在就是 b=(1024+6)*4=4120如果你想问的不是这个,就说清楚了。

否则我真心没法答。

...

匿名网友:

1、&a:其含义比较单纯,就是“变量a的地址”。

2、*a:用在不同的地方,含义也不一样。

1在声明语句中,*a只说明a是一个指针变量,如int *a;(2)在其他语句中,*a前面没有操作数且a是一个指针时,*a代表指针a指向的地址内存放的数据,如b=*a;(3)*a前面有操作数且a是一个普通变量时,*a代表乘以a,如c=b*a。

匿名网友:

1 用''对包含的代表字符常量,其值为字符a的ascii码。

2 用""对包含的代表字符串常量,其有两个元素,第一个是a,第二个是结束符'\0'。

于是二者区别可以总结为:1 类型不同,字符和字符串。

2 占用空间不同,前一个是一个字节,后一个是两个字节。

匿名网友:

这个太有区别了!a==b==c 是一个关系表达式,由于运算符"=="具有左结合性,故其运算顺序是:a==b ==c 若a=5,b=5,c=5,则a==b的值为1,而1==c的结果为0a==b,b==c是分别判断a和b以及b和c关系运算 补充,楼上说a==b==c是先执行b==c是错误的,因为C语言中只有赋值运算符和单目运算符具有右结合性,故运算对象b必然先于左侧的"=="结合。

再次补充:这不是赋值的问题,没有赋值运算符,而是关系运算...

匿名网友:

假设int a = 1;那么假设printf("%d",--a);那么是将a减1,然后输出a输出的结果就是:0假设printf("%d",a--);是先输出a,然后执行a-1.输出结果是:1int a = 1;printf("%d\n",a--); // 是先输出a,然后执行a-1.printf("%d\n",a); // 所以这里输出的a是0!而且注意不要把增量运算符或减量运算符放在输出中,比如:int a = 1;printf("%d\t%d\t%d\t%d\n",a,a++,a,a++);输出结果是3 2 2 1你可能疑惑为什么第二个a++不是3呢?因为标准C并没有规定在一个语句中是每执行执行一次增减量运算符后执行增减还是整个语句执行完后完成增减...所以最好不要使用这种方法.可以把语句分开来运算...

问题推荐

C语言中字母a等于,C语言中’a’和"a"有什么区别?,c语言中“!a"是什么意思啊...相关推荐

  1. c语言中继承的好处,c语言中,继承和和组合有什么区别

    咨询我 400-64365-60 (咨询请说明来自律图) 地区:湖北- 缺点,继承和组合都是代码复用的有效方法.组合是将其他类的对象作为成员使用,子类也不得不会随之更改.更复杂的功能.优点.子类与父类 ...

  2. c语言中变量加1,c语言中,指针加1的情况.指针变量详细介绍

    指针是一个特殊的变量,它里面存储的数值被解释成为内存里的一个地址. 要搞清一个指针需要搞清指针的四方面的内容: 指针的类型, 指针所指向的 类型, 指针的值或者叫指针所指向的内存区, 还有指针本身所占 ...

  3. c语言其他函数调用main函数,C语言中的main函数以及main函数是如何被调用的

    main函数是C语言中比较特殊的函数,C程序总是从main函数开始执行,main函数的原型是: int main(int argc, char *argv[]); 其中argc是命令行参数的个数,ar ...

  4. 快速搞懂C语言中exit(0)与exit(1)有什么区别??

    C语言中exit(0)与exit(1)有什么区别?? exit(1)表示异常退出,在退出前可以给出一些提示信息,或在调试程序中察看出错原因. exit(0)表示正常退出. return是语言级别的,是 ...

  5. 简述C语言中.h文件和.c文件作用和区别

    简述C语言中.h文件和.c文件作用和区别 在c语言学习过程中,对.h文件和.c文件不甚了解,参考其他资料后对它进行简要分析: .h文件和.c文件作用 使用.h文件和.c文件的原因 .h文件和.c文件作 ...

  6. c语言中exit(0)的作用,C语言中exit(0)与exit(1)有什么区别??

    C语言中exit(0)与exit(1)有什么区别?? 來源:互聯網  2011-05-19 04:55:14  評論 分類: 電腦/網絡 >> 軟件 問題描述: return又和exit( ...

  7. c语言中字符 a b =,C语言中(ab)?a:b和(ab)?b:a有什么区别,C语言中,a++ +b和a+ ++b有什么不同...

    导航:网站首页 > C语言中(a>b)?a:b和(a C语言中(a>b)?a:b和(a 匿名网友: "?"在C语言中表示疑问.假如.如果. ":&quo ...

  8. main c语言中变量的定义,C语言中在main函数中定义的变量是全局变量么_后端开发...

    PHP 和 JavaSript 区别_后端开发 PHP是一种创建动态交互性站点的强有力的服务器端脚本语言,主要用于Web开发领域,而JavaSript是一种具有函数优先的轻量级,解释型或即时编译型的高 ...

  9. 在c语言中通过return语句,c语言中return的用法

    c语言中return的用法 函数的返回值是指函数被调用之后,执行函数体中的代码所得到的结果,这个结果通过 return语句返回. return 语句的一般形式为:return 表达式; 或者:retu ...

最新文章

  1. js同时打开两个连接
  2. websocket / 使用 wireshark 分析 websocket 连接过程
  3. windows server 2012 RC download.
  4. 从工作的角度看 CV/NLP/推荐系统选哪个?
  5. python怎么创建字符串列表_Python(字符串,列表,元组,字典)
  6. 海信空调拥抱变革 扎实技术+多样产品组合引爆市场
  7. Windows7 Xp Mode部署与讲解
  8. MIFARE系列6《射频卡与读写器的通讯》
  9. java泛型区间_JAVA 14(泛型)
  10. 还原二叉树--根据后序中序输出先序
  11. 智能图形开发板SmartGLCD
  12. java 1.4 下载_j2sdk1.4.2
  13. 机器学习之实现一元线性回归模型
  14. CSS 只选中第一个和最后一个元素
  15. 【会议预告】第七届上海国际皮革展览会
  16. arduino智能浇花系统_基于Arduino单片机的智能浇花器
  17. 「来道题」Redis的Gossip协议
  18. 跟李沐学AI:实用机器学习 | 第一章
  19. 正式驻扎CSDN.hahaha
  20. oracle求字段中指定字符串出现个数

热门文章

  1. 知道一个IP地址,如何计算出它的子网掩码
  2. unity文字逐个出现实现文字打印机效果
  3. nodejs crud
  4. 如何用Python查看微信好友撤回的消息?
  5. AAL模板及脑区功能介绍
  6. 笔记本开机后桌面图标变乱
  7. GeForce RTX 30:AV1解码迎来视频内容的新时代
  8. android 英雄无敌3,安卓TOP10:《英雄无敌3》高清重制版上架
  9. Word2Vec学习(自用)
  10. AI视频融合平台EasyCVR现已支持华为宇视等四种SDK接入