c - 对变量声明感到困惑
问题描述
这段代码是什么意思?
int c, sign;
sign = (c == '-') ? -1 : 1;
我只知道整数是数字。问号等是什么意思?
解决方案
这是三元运算符。
sign = (c == '-') ? -1 : 1;
上面的代码等价于
if(c == '-') sign =-1;
else sign=1;
解释更多关于三元运算符的信息:
语法是:
(condition)? do this if condition is true:do this if condition is false
您可以将其用于另一个示例:
int a=1;
printf( "Value of test is %d\n", (a == 1) ? 20: 30 );
如果 a==1 为真,则打印 20,如果 a==1 为假,则打印 30
推荐阅读
- laravel - laravel 删除数据库中的数据
- ios - 尝试将 Google AdMob 集成到 iOS 上的 libgdx 游戏中会导致“找不到框架 GoogleUtilities”
- r - 将数据框中的文本信息拆分为单个单词并检测它们是否是字典 R 的一部分
- php - Mysql,将PHP中的选项存储为数组
- java - 从命令行运行本地(反应器)maven插件
- php - 富文本编辑器 Laravel Trix 的未知错误
- r - 对两条曲线之间的数据进行子集化
- python - 如何从绘图中切出一块并将我需要的点设置为零?
- listview - 如何在 ListView 中隐藏禁用的 MenuItem
- java - Tomcat 上的 Java servlet 出现 404 错误,但在 localhost 上运行良好