当前位置:首页 » 编程语言 » c语言x减减区别
扩展阅读
webinf下怎么引入js 2023-08-31 21:54:13
堡垒机怎么打开web 2023-08-31 21:54:11

c语言x减减区别

发布时间: 2022-06-16 12:15:45

c语言中,!(--x)什么意思

C语言运算符,括号里面(---x)表示x的值减去1,相当于“x”变为“x-1”,括号外面“!”表示取反(非0数变为0,0变为1)。

除了常见的三大类,算术运算符、关系运算符与逻辑运算符之外,还有一些用于完成特殊任务的运算符,比如位运算符。



(1)c语言x减减区别扩展阅读


优先级,C语言中,运算符的运算优先级共分为15 级。1 级最高,15 级最低。 在表达式中,优先级较高的先于优先级较低的进行运算。而在一个运算量两侧的运算符 优先级相同时,则按运算符的结合性所规定的结合方向处理。

结合性:C语言中各运算符的结合性分为两种,即左结合性(自左至右)和右结合性(自右至左)。例如算术运算符的结合性是自左至右,即先左后右。如有表达式x-y+z 则y 应先与“-”号结合,执行x-y 运算,然后再执行+z 的运算。这种自左至右的结合 方向就称为“左结合性”。

而自右至左的结合方向称为“右结合性”。最典型的右结合 性运算符是赋值运算符。如x=y=z,由于“=”的右结合性,应先执行y=z 再执行x=(y=z)运算。C语言运算符中有不少为右结合性,应注意区别,以避免理解错误。

优先级从上到下依次递减,最上面具有最高的优先级,逗号操作符具有最低的优先级。所有的优先级中,只有三个优先级是从右至左结合的,它们是单目运算符、条件运算符、赋值运算符。其它的都是从左至右结合。

具有最高优先级的其实并不算是真正的运算符,它们算是一类特殊的操作。()是与函数相关,[]与数组相关,而->及.是取结构成员。

其次是单目运算符,所有的单目运算符具有相同的优先级,因此在我认为的 真正的运算符中它们具有最高的优先级,又由于它们都是从右至左结合的,因此*p++与*(p++)等效是毫无疑问的。

另外在C语言里,没有前置后置之分,因为++ -- 是右结合所以右侧优先运算,表现为 "操作数后置优先级比较高" 的假象,前置和后置的区分是因为运算符重载而后加入C++的

接下来是算术运算符,*、/、%的优先级当然比+、-高了。

❷ C语言中--*x和*x--有什么区别

区别是--*x是x地址使用前就减1,*x--使用时按原值。这两个都是每循环一次,地址减1.

❸ C语言x=*p--和x=(*p--)的区别是什么

C语言中,*p 和p都常用在指针当中表示一个指针变量,*p 和p的区别:

1、表示的含义不同

*p表示此指针指向的内存地址中存放的内容。

p表示一个指针变量的名字,指此指针变量所指向的内存地址。

2、输出的格式不同

*p一般是一个和指针类型一致的变量或者常量。

p输出的是一个16进制数,输出一个指针的地址。

3、功能不同

*p是让程序去那个地址取出数据。

p存放的是地址。

例子:

1、int a[5]={1,2,3,4,5};

int *p=a;//这是在定义指针变量p的同时就直接给它初始化,即把数组a的首地址赋给它。

2、int a[5]={1,2,3,4,5};

int *p;//声明指针变量p

p = a;

(3)c语言x减减区别扩展阅读

(*p)操作是这样一种运算,返回p 的值作为地址的那个空间的取值。(&p)则是这样一种运算,返回当时声明p 时开辟的地址。可以用赋值语句对内存地址赋值。

例:

int *p;

p=2003H;

*p=3000H

结果:

**p=*(*(p))=*(*(2003H))=*(3000H)=3000H。

&&p=&(&(p))=&(3001H),此时出错了,3001H 是个常数无法存放地址。

*&p=*(&(p))=*(3001H)=2003H,也就是*&p=p。

❹ C语言中y=x--该怎样理解

首先 x的值赋给y,然后 x的值自减1;
如果是y=--x;
就是x先自减1,然后赋给y;

❺ C语言中X++和++X有什么区别

C语言中X++和++X的区别如下:

1、增的顺序不同

x++表示x增1后再参与其它运算。++x是x参与运算后,x的值再自增1。

2、自增类型不同

x++属于后置自增运算。++x属于前置自增运算。

(5)c语言x减减区别扩展阅读:

C语言是一门通用计算机编程语言,广泛应用于底层开发。C语言的设计目标是提供一种能以简易的方式编译、处理低级存储器、产生少量的机器码以及不需要任何运行环境支持便能运行的编程语言。

尽管C语言提供了许多低级处理的功能,但仍然保持着良好跨平台的特性,以一个标准规格写出的C语言程序可在许多电脑平台上进行编译,甚至包含一些嵌入式处理器(单片机或称MCU)以及超级电脑等作业平台。

二十世纪八十年代,为了避免各开发厂商用的C语言语法产生差异,由美国国家标准局为C语言制定了一套完整的美国国家标准语法,称为ANSI C,作为C语言最初的标准。

参考资料来源:网络_c语言

❻ c语言x减减等于2是什么意思呀

x--=2是错误的表达,x--表示的是

x=x-1;

x--=2翻译过来事实上就变成了

x=x-1=2;

c里是不能对表达式赋值的,所以这是错误的表达。你想写的可能是x-=2,这是合理的,x-=2即为:

x=x-2;

另外还有x+=n,x*=n,x/=n,x++,++x,--x等表达方式,其中n可以为任意常数或数值变量

❼ 到底怎么理解c语言当中的x--我看到有人要是先用再减,具体到底怎么使用比如一个for循环,fo

x--就是x这个变量自己减一定的数值,具体减去的数值和变量类型有关。上题x会-1

❽ c语言中,printf输出里面,(x--)和(x++)区别

x++或者x--叫后加或者后减,意义就是先用x的值,之后才对x加1或减1,至于++x或者--x是先对x加1或减1,之后再用。

❾ C语言,x-是什么意思和x--有区别吗

x-是书上印错了,根本没有x-
要么是x--
要么是x-1
要么是-x

不行你可以把那代码拿去编译,编译通不过