a++和++a的区别
void main()
{
int a=0;
cout<<"a="<<a++<<endl;//a=0
cout<<"a="<<++a<<endl;//a=2
cout<<"a="<<a++<<endl;//a=2
cout<<"a="<<a++<<endl;//a=3
cout<<"a="<<++a<<endl;//a=5
cout<<"a="<<++a<<endl;//a=7
cout<<"a="<<a++<<endl;//a=8
}
后面结果是我的猜测,请问错在哪了?希望能够详细点,谢谢大虾了! 展开
一、计算结果不同
1、a++:a++的结果跟程序执行过程有关,有可能是加上1,有可能不加1。
2、++a:++a的结果是a加上1。
二、计算过程不同
1、a++:计算过程是先执行a,之后在增加1。
2、++a:计算过程是先加上1,之后再执行a。
三、内存运行不同
1、a++:在内存中寄存器先执行表达式,之后再进一位。
2、++a:在内存中,寄存器先进一位之后再执行表达式。
参考资料来源:百度百科-自增自减运算符
参考资料来源:百度百科-C语言运算符
a++和++a的区别是a++是使用的a后,再对a进行加1。++a是先把a加1,然后再使用a。
c语言是一门面向过程、抽象化的通用程序设计语言,广泛应用于底层开发。C语言具有高效、灵活、功能丰富、表达力强和较高的可移植性等特点,在程序设计中备受青睐。
C语言编译器普遍存在于各种不同的操作系统中,例如Microsoft Windows、macOS、Linux、Unix等。C语言的设计影响了众多后来的编程语言,例如C++、Objective-C、Java、C#等。
相关介绍:
C语言是一门面向过程的计算机编程语言,与C++、Java等面向对象编程语言有所不同。C语言的设计目标是提供一种能以简易的方式编译、处理低级存储器、仅产生少量的机器码以及不需要任何运行环境支持便能运行的编程语言。
C语言描述问题比汇编语言迅速,工作量小、可读性好,易于调试、修改和移植,而代码质量与汇编语言相当。C语言一般只比汇编语言代码生成的目标程序效率低10%到20%。因此,C语言可以编写系统软件。
2022-12-01 · 百度认证:北京惠企网络技术有限公司官方账号
1、本质区别
双引号里面的是字符串, 而单引号里面的代表字符。
2、输出区别
str = “a”输出的就是a这个字母;
str = ‘a’输出的测试65
3、底层区别
用单引号引起的一个字符实际上代表一个整数,整数值对应于该字符在编译器采用的字符集中的序列值。
扩展资料:
C 语言中,逗号(,)也可以是运算符,称为逗号运算符(Comma Operator)。逗号运算符可以把两个以上(包含两个)的表达式连接成一个表达式,称为逗号表达式。其一般形式为:
子表达式1, 子表达式2, ..., 子表达式n
例如:a + b, c = b, c++
逗号运算符的优先级是所有运算符中级别最低的,通常配合 for 循环使用。逗号表达式最右边的子表达式的值即为逗号表达式的值。上例中,c++ 的值(c 自增之前的值)即为该表达式的值。
逗号运算符保证左边的子表达式运算结束后才进行右边的子表达式的运算。也就是说,逗号运算符是一个序列点,其左边所有副作用都结束后,才对其右边的子表达式进行运算。因此,上例中,c 得到 b 的值后,才进行自增运算。
参考资料来源:百度百科-C语言
如
int a=1;
int b=1+a++;
则b=2;a=2
而int b=++a+1;
则b=3;a=2;
如果表达式就是一个简单的a++或++a;那是一样的
写成while循环和第一个是一样的,因为++不影响,它不在表达式里
while(a<5)
{sum=sum+a;
++a;//或a++
}
++a,在a存储的值上增加1并向使用它的表达式“返回”新的a值;
a++,向使用它的表达式“返回”a的值,再对a加1。
int a=0;
cout<<"a="<<a++<<endl;//输出a=0,此时a=1
cout<<"a="<<++a<<endl;//输出a=2,此时a=2
cout<<"a="<<a++<<endl;//输出a=2,此时a=3
cout<<"a="<<a++<<endl;//输出a=3,此时a=4
cout<<"a="<<++a<<endl;//输出a=5,此时a=5
cout<<"a="<<++a<<endl;//输出a=6,此时a=6
cout<<"a="<<a++<<endl;//输出a=6,此时a=7