C语言中!a是什么意思

 我来答
超绝至精
高粉答主

2018-10-07 · 关注我不会让你失望
知道答主
回答量:15
采纳率:100%
帮助的人:2万
展开全部

1、c语言中=!是两个运算符摆放在一起,“=”是赋值运算符,“!”逻辑非运算符;

2、逻辑操作符一般将其操作数视为条件表达式,返回结果为Bool类型;

3、首先对其操作数求值,若结果为0,则条件为假(false),否则为真(true);

4、优先级上“!”先于“=”;所有比如有下面的式子,int i;i=!5;

5、这个理解为:根据运算符优先级,!先于=;首先5作为!的操作数,求值!5的结果是bool型的false。

6、然后false隐士转换成int型,即0;所以i里面的值是整形0。

扩展资料:

C语言运算

1、C语言的运算非常灵活,功能十分丰富,运算种类远多于其它程序设计语言。

2、在表达式方面较其它程序语言更为简洁,如自加、自减、逗号运算和三目运算使表达式更为简单;

3、但初学者往往会觉的这种表达式难读,关键原因就是对运算符和运算顺序理解不透不全

特有特点

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

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

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

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

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

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

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

参考资料来源:百度百科:C语言

兔丞飞
高粉答主

2018-12-18 · 专注娱乐 专注娱乐 专注娱乐
兔丞飞
采纳数:25 获赞数:19893

向TA提问 私信TA
展开全部

“->”是一个整体,它是用于指向结构体子数据的指针,用来取子数据。

换种说法,如果我们在C语言中定义了一个结构体,然后申明一个指针指向这个结构体,那么我们要用指针取出结构体中的数据,就要用到“->”。

问题中的p=p->next ,意思是将p指向的一个结构体实例中的自数据next赋值给p。

扩展资料

struct 结构体类型名 *指针名;//结构体指针

struct 结构体类型名 *指针名 = &一个结构体的名字;//结构体指针并赋初值

struct 结构体类型名 *指针名 = new struct 结构体类型名;//结构体指针并用new申请内存

struct 结构体类型名 *指针名 =(struct 结构体类型名 *)malloc(sizeof(struct 结构体类型名))//结构

体指针并用malloc申请内存 使用应包含头文件stdlib.h

//对象指针的定义方法略同。

参考资料:百度百科 ->

本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
10里8乡的俊后生
高粉答主

2018-10-06 · 醉心答题,欢迎关注
知道答主
回答量:28
采纳率:0%
帮助的人:8374
展开全部

“=”是赋值运算符

“!”逻辑非运算符,逻辑操作符一般将其操作数视为条件表达式,返回结果为Bool类型:首先对其操作数求值,若结果为0,则条件为假(false),否则为真(true)

优先级上“!”先于“=”

扩展资料

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

C语言是一门面向过程的计算机编程语言,与C++,Java等面向对象的编程语言有所不同。

参考资料C语言_百度百科

已赞过 已踩过<
你对这个回答的评价是?
评论 收起
momo123123123
2010-12-03 · TA获得超过175个赞
知道答主
回答量:10
采纳率:0%
帮助的人:17.9万
展开全部
是条件运算符。条件运算符是C语言中唯一的三目运算符,就是说他有三个运算对象。条件运算符的形式是“?:”由他构成的表达式称为条件表达式。形式为:
表达式1?表达式2:表达式3
运算功能是。先计算表达式1的值,若值为非0,则计算表达式2的值,并将表达式2的值作为整个条件表达式的结果;若表达式1的值为0,则计算表达式3的值,并将表达式3的值作为整个条件表达式的结果。
比如有以下条件表达式 (a>b)?a+b:a-b
a=8 b=4时,计算a+b=12 ,所以表达式结果为12
a=4 b=8时,计算a-b=-4,所以表达式结果为-4
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
paypang
2011-05-28 · TA获得超过382个赞
知道小有建树答主
回答量:106
采纳率:0%
帮助的人:121万
展开全部
这是两个运算符摆放在一起而已
“=”是赋值运算符
“!”逻辑非运算符,逻辑操作符一般将其操作数视为条件表达式,返回结果为Bool类型:首先对其操作数求值,若结果为0,则条件为假(false),否则为真(true)
优先级上“!”先于“=”

所有比如有下面的式子
int i;
i=!5;

这个要怎么理解呢?
1.根据运算符优先级,!先于=
2.首先5作为!的操作数,求值!5的结果是bool型的false
3.然后false隐士转换成int型,即0
4.所以i里面的值是整形0
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(47)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式