搜索
编程论坛
→
开发语言
→
『 C语言论坛 』
→ 求助大佬(其实这个不是大佬都行!!太萌新的问题了
标题:
求助大佬(其实这个不是大佬都行!!太萌新的问题了
只看楼主
喜风
等 级:
新手上路
帖 子:10
专家分:0
注 册:2022-10-2
结帖率:
33.33%
楼主
已结贴
√
问题点数:20 回复次数:9
求助大佬(其实这个不是大佬都行!!太萌新的问题了
我想用C语言算逗号表达式,就是这个(a=2,b=5,a+b++,a+b)的结果,然后自信地敲了一串代码
#include<stdio.h>
int main()
{
int a,b,c;
a=2;
b=5;
c=(a=2,b=5,a+b++,a+b);
printf("%d\n",c);
return 0;
}
当然这一串狗屁不通的代码是没有什么好结果的,结果就是没有结果,都运行不了。。。。
搜索更多相关主题的帖子:
代码
printf
int
main
结果
2022-10-02 22:31
吹水佬
等 级:
版主
威 望:
432
帖 子:10064
专家分:41463
注 册:2014-5-20
第
2
楼
得分:5
2022-10-03 07:53
snowman666
等 级:
新手上路
帖 子:15
专家分:7
注 册:2022-9-3
第
3
楼
得分:5
我也想问一下,第三个表达式a+b++还是等于7,但这时b变成6了,所以才在第四个表达式a+b输出8。我想问一下是这样吗
2022-10-03 19:46
rjsp
等 级:
版主
威 望:
507
帖 子:8890
专家分:53117
注 册:2011-1-18
第
4
楼
得分:5
回复 3楼 snowman666
对,评估值 与 副作用 是两个概念。
比如 int a = 0;
那么 a++ 这个表达式的评估值是 0,副作用是 a 的值变为了1。
2022-10-03 20:50
喜风
等 级:
新手上路
帖 子:10
专家分:0
注 册:2022-10-2
第
5
楼
得分:0
回复 2楼 吹水佬
为什么我的运行不出来
2022-10-03 21:04
喜风
等 级:
新手上路
帖 子:10
专家分:0
注 册:2022-10-2
第
6
楼
得分:0
回复 2楼 吹水佬
不过还是非常感谢您的帮助!!!
2022-10-03 21:05
喜风
等 级:
新手上路
帖 子:10
专家分:0
注 册:2022-10-2
第
7
楼
得分:0
回复 4楼 rjsp
谢谢您!!!
2022-10-03 21:07
rjsp
等 级:
版主
威 望:
507
帖 子:8890
专家分:53117
注 册:2011-1-18
第
8
楼
得分:0
回复 7楼 喜风
主要是大家理解不了你说的“都运行不了”是什么意思。
如果编译失败,那你应该贴出编译器给出的错误信息;
如果运行报错,那你应该贴出报错信息;
如果运行后控制台界面一闪而过,那也应该说“运行成功,但……”。
你的行为就像跟医生说“我有病”,但死活不肯说是头痛还是脚疼,却让医生开药一样
2022-10-04 09:10
不会游泳的虾
等 级:
贵宾
威 望:
24
帖 子:101
专家分:643
注 册:2021-7-1
第
9
楼
得分:5
既然是逗号表达式,c=(a=2,b=5,a+b++,a+b);把表达式的每句都执行一遍呗,返回最后表达式的值,这也没什么错误,合规合法。
2022-10-04 10:27
ioriliao
来 自:广东
等 级:
贵宾
威 望:
32
帖 子:2829
专家分:647
注 册:2006-11-30
第
10
楼
得分:0
等价于
a=2;
b=5;
a+b++;
c=a+b;
/images/2011/147787/2011051411021524.jpg" border="0" />
2022-10-10 14:15
10
1/1页
1
参与讨论请移步原网站贴子:
https://bbs.bccn.net/thread-510185-1-1.html
关于我们
|
广告合作
|
编程中国
|
清除Cookies
|
TOP
|
手机版
编程中国
版权所有,并保留所有权利。
Powered by
Discuz
, Processed in 0.140603 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved