社区
C++ 语言
帖子详情
== 和 = 的区别????
wangsiyuanoo
2008-06-08 11:35:52
1.==是比较操作,就是等于的意思,对吧?
那=是赋值操作,就是说会将右侧表达式的运算结果指给左侧的一个左值。,这和等于有什么区别啊?
2.if ( ival = 1024 )为什么说应该是 if ( ival == 1024 )?
...全文
283
33
打赏
收藏
== 和 = 的区别????
1.==是比较操作,就是等于的意思,对吧? 那=是赋值操作,就是说会将右侧表达式的运算结果指给左侧的一个左值。,这和等于有什么区别啊? 2.if ( ival = 1024 )为什么说应该是 if ( ival == 1024 )?
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
33 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
Zhentiwei
2008-06-10
打赏
举报
回复
[Quote=引用 21 楼 program2050 的回复:]
楼上的都说得很清楚了。
楼主多编几个小程序,对比对比就明白啦。
[/Quote]
Learn-anything
2008-06-10
打赏
举报
回复
[Quote=引用 6 楼 zzhprogram 的回复:]
引用 1 楼 chlaws 的回复:
if 中条件判断语句不能为赋值.
= 是赋值符
== 是比较符
=进行的赋值,返回的是左值,比如:if(i=3)其实就是if(3),只是给i赋值了
==进行逻辑判断,返回的是真假值,C\C++中,0为假,非0为真。所以if(i=3)为真
[/Quote]
passenger728
2008-06-10
打赏
举报
回复
=赋值是对原有的值进行修改,==是对两边数据的比较。
pengzhixi
2008-06-10
打赏
举报
回复
一个是赋值表达式一个是逻辑表达式
lengluoqingqiu
2008-06-10
打赏
举报
回复
==是等于的意思,一般用于判断两边是否相等.
=是赋值a=3是指将3赋给a.
xiaochongzi630
2008-06-10
打赏
举报
回复
一个是赋值,一个是比较.
hai040
2008-06-10
打赏
举报
回复
有些语言把赋值记成 :=可能比较清楚
==两边是可以交换的,A==B和B==A一样
=两边是不能交换的,A=B和B=A完全不同
yangar9179
2008-06-10
打赏
举报
回复
有时间看一下C++Primer Plus中文版第五版讲的很详细的..
=是赋值.
==是条件判断返回true ,false
但=号偶尔也可以用来做判断..
darkarthur
2008-06-10
打赏
举报
回复
if a = b 永远对
if a == b 才是比较
晨星
2008-06-09
打赏
举报
回复
举个简单的例子:
int i = 10;
if(i == i + 1)
这个if是永远不成立的。
而
if(i = i + 1)
的意思却是将i加1再将结果赋给i本身,然后看i是否为0,是0即表示“假”,否则为“真”。
yuzl32
2008-06-09
打赏
举报
回复
一个是逻辑运算,结果非真即假。用来做条件判断,如if,while...
另一个是赋值语句。将值赋给某个变量。
性能侠客行
2008-06-09
打赏
举报
回复
一起 努力 学习吧,初学者吧,加油。
program2050
2008-06-09
打赏
举报
回复
楼上的都说得很清楚了。
楼主多编几个小程序,对比对比就明白啦。
NKLoveRene
2008-06-09
打赏
举报
回复
一个表示赋值
两个表示判断
fengyizi
2008-06-09
打赏
举报
回复
[Quote=引用 18 楼 lymlymzy 的回复:]
强烈建议你把书看好 !!
[/Quote]
lymlymzy
2008-06-09
打赏
举报
回复
强烈建议你把书看好 !!
KingZ_c1ear
2008-06-08
打赏
举报
回复
[Quote=引用 6 楼 zzhprogram 的回复:]
引用 1 楼 chlaws 的回复:
if 中条件判断语句不能为赋值.
= 是赋值符
== 是比较符
=进行的赋值,返回的是左值,比如:if(i=3)其实就是if(3),只是给i赋值了
==进行逻辑判断,返回的是真假值,C\C++中,0为假,非0为真。所以if(i=3)为真
[/Quote]
这两个是两回事吧! (我的理解是==与<=,>=,<,>都是比较符 是比较的;而=是赋值符 在赋值的时候用的 这两个运算符用的场合是不一样的。)
if语句()内是条件语句 ival = 1024 是赋值语句 返回值是非0(真)编译没有错,但是没有起到效果。 ival == 1024是比较(如果ival的值等于1024,系统返回1 (真)执行if(){}里的语句,否者执行以后的语句。 (我的理解)
飞雁
2008-06-08
打赏
举报
回复
if 是条件判断,如果ival = 1024 ,编译不会出错,但是结果不是想象的结果,
ival == 1024 只能是条件判断了啊,语言中就是这么规定的啊,哈哈哈
飞哥
2008-06-08
打赏
举报
回复
1.==是比较操作,就是等于的意思,对吧?
是。
2.if ( ival = 1024 )为什么说应该是 if ( ival == 1024 )?
if ( ival = 1024 )就相當於 if(1)了
始終都成立
if()裏面的是布爾表達式,
ival = 1024作為布爾表達式返回永遠是TRUE
zzhprogram
2008-06-08
打赏
举报
回复
[Quote=引用 1 楼 chlaws 的回复:]
if 中条件判断语句不能为赋值.
= 是赋值符
== 是比较符
[/Quote]
=进行的赋值,返回的是左值,比如:if(i=3)其实就是if(3),只是给i赋值了
==进行逻辑判断,返回的是真假值,C\C++中,0为假,非0为真。所以if(i=3)为真
加载更多回复(13)
10个经典程序c语言
题目:809*??=800*??+9*??+1 其中??代表的两位数,8*??的结果为两位数,9*??的结果为3位数。求??代表的两位数,及809*??后的结果
在js或css后加?v= 版本号不让浏览器缓存
复制代码代码如下:css和js带参数(形如.css?v=与.js?v= 或 .css?version=与.js?version= ) [removed][removed] <link rel=’stylesheet’ href=’base.css?version=2.3.3′ type=’text/css’ /> 使用参数有两种可能: 第一、脚本并不存在,而是服务端动态生成的,因此带了个版本号,以示
区别
。 即上面代码对于文件来说 等价
成员初始化列表与构造函数体中的
区别
详细解析
论坛中回答一个别人问题 C++ Primer中在讲构造函数初始化列表的时候有这么一段话:无论是在构造函数初始化列表中初始化成员,还是在构造函数体中对它们赋值,最终结果是相同的。不同之处在于,使用构造函数初始化列表的版本初始化数据成员,没有定义初始化列表的构造函数版本在构造函数体中对数据成员赋值。 请问这里的初始化数据成员与对数据成员赋值的含义是什么?有什么
区别
? 我知道在数据成员有默认构造函数时是有不同的,但对其他类型的成员呢?其他类型成员的初始化和赋值有
区别
吗?==================================================================
Ruby里4种比较函数(equal?, eql?, ==, ===)详解
本文给大家详细介绍了Ruby中的4种比较函数(equal?, eql?, ==, ===)的用法,并用具体示例进行了讲解,希望对大家学习ruby能够有所帮助。
C#中“?”和“??”的
区别
C#中“?”和“??”的
区别
C++ 语言
65,206
社区成员
250,517
社区内容
发帖
与我相关
我的任务
C++ 语言
C++ 语言相关问题讨论,技术干货分享,前沿动态等
复制链接
扫一扫
分享
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++
技术论坛(原bbs)
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
请不要发布与C++技术无关的贴子
请不要发布与技术无关的招聘、广告的帖子
请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下
试试用AI创作助手写篇文章吧
+ 用AI写文章