|
网站首页
|
业界新闻
|
小组
|
威客
|
人才
|
下载频道
|
博客
|
代码贴
|
在线编程
|
编程论坛
|
登录
注册
短消息
我发表的主题
我参与的主题
我收藏的贴子
我上传的附件
我下过的附件
编辑个人资料
我的博客
用户控制面板
搜索
道具
恢复默认风格
碧海青天
秋意盎然
棕红预览
粉色回忆
蓝雅绿
紫色淡雅
青青河草
e点小镇
橘子红了
红红夜思
水晶紫色
雪花飘飘
新年快乐
风格
短消息
论坛展区
帮助
编程论坛
→
开发语言
→
『 C语言论坛 』
→ 我这三目运算为啥不行?
我的收件箱(0)
欢迎加入我们,一同切磋技术
用户名:
密 码:
共有
3472
人关注过本帖
标题:
我这三目运算为啥不行?
只看楼主
加入收藏
Sillydog
等 级:
新手上路
帖 子:7
专家分:0
注 册:2018-4-19
结帖率:
100%
楼主
收藏
已结贴
√
问题点数:20 回复次数:11
我这三目运算为啥不行?
char a;
scanf("%c",&a);
(a=='q')?return 0:printf("%c\n",a);
报错:expected expression before 'return'.
return 0 换成break也这样
[此贴子已经被作者于2018-6-20 20:12编辑过]
搜索更多相关主题的帖子:
三目
运算
return
expression
before
2018-06-20 19:39
举报帖子
使用道具
赠送鲜花
lin5161678
等 级:
贵宾
威 望:
45
帖 子:1136
专家分:3729
注 册:2011-12-3
第
2
楼
收藏
得分:4
?:
第二个操作数得写一个表达式
return 0 不是表达式
所以错了
用if吧
https://zh.
2018-06-20 20:39
举报帖子
使用道具
赠送鲜花
dzy123
等 级:
蝙蝠侠
威 望:
5
帖 子:379
专家分:820
注 册:2013-4-18
第
3
楼
收藏
得分:4
printf("%c",a=='q'?0:a);
2018-06-20 20:44
举报帖子
使用道具
赠送鲜花
Sillydog
等 级:
新手上路
帖 子:7
专家分:0
注 册:2018-4-19
第
4
楼
收藏
得分:0
回复 3楼 dzy123
这样就和我要的不一样了,条件为真要 退出的;我想弄明白为啥不行啊,搞不懂很难受的
2018-06-20 21:21
举报帖子
使用道具
赠送鲜花
Sillydog
等 级:
新手上路
帖 子:7
专家分:0
注 册:2018-4-19
第
5
楼
收藏
得分:0
回复 2楼 lin5161678
怎么不是表达式的呢,你是指没法用分号吗,可return 0换成printf("0\n")就是可以执行的了。
2018-06-20 21:30
举报帖子
使用道具
赠送鲜花
Sillydog
等 级:
新手上路
帖 子:7
专家分:0
注 册:2018-4-19
第
6
楼
收藏
得分:0
<表达式1> ? <表达式2> : <表达式3>; "?"运算符的含义是:先求表达式1的值,如果为真,则执行表达式2,并返回表达式2的结果;如果表达式1的值为假,则执行表达式3,并返回表达式3的结果。
:是因为return 0 无法返回结果吗?
2018-06-20 21:33
举报帖子
使用道具
赠送鲜花
ab1412
来 自:M78星球
等 级:
黑侠
威 望:
4
帖 子:103
专家分:537
注 册:2018-3-15
第
7
楼
收藏
得分:4
我的理解的话,printf的函数声明是int printf(char *fmt, ...),可以看到是int型的,即有返回值的函数,举例来说,printf("0\n")是一个有值的表示式(楼主可以用
print(
"
%d
"
,printf(
"
0\n
"
))
显示它的值,但是对于return 0来说其实就是和int a一样的语句,没有值,所以没法用三目运算符
printf("萌新一枚,请多指教");
2018-06-20 22:54
举报帖子
使用道具
赠送鲜花
lin5161678
等 级:
贵宾
威 望:
45
帖 子:1136
专家分:3729
注 册:2011-12-3
第
8
楼
收藏
得分:0
回复 6楼 Sillydog
即表达式是由一系列操作符(operators)和操作数(operands)组成的
return 既不是操作符 也不是 操作数
所以 return 0 不是表达式
我说 你对这些基本概念就没一点了解吗?
https://zh.
2018-06-20 23:11
举报帖子
使用道具
赠送鲜花
lin5161678
等 级:
贵宾
威 望:
45
帖 子:1136
专家分:3729
注 册:2011-12-3
第
9
楼
收藏
得分:0
回复 7楼 ab1412
int a 不是语句的
https://zh.
2018-06-20 23:12
举报帖子
使用道具
赠送鲜花
八画小子
等 级:
贵宾
威 望:
37
帖 子:709
专家分:2063
注 册:2010-11-11
第
10
楼
收藏
得分:4
给自己找麻烦呢。为啥不用if else语句?如果真想弄明白为什么错,建议你查查C语言中:?运算符的用法。
2018-06-21 01:40
举报帖子
使用道具
赠送鲜花
12
1/2页
1
2
快速回复:
我这三目运算为啥不行?
数据加载中...
关于我们
|
广告合作
|
编程中国
|
清除Cookies
|
TOP
|
手机版
编程中国
版权所有,并保留所有权利。
Powered by
Discuz
, Processed in 0.017898 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved