Chinaunix首页 | 论坛 | 博客
  • 博客访问: 87319
  • 博文数量: 60
  • 博客积分: 4002
  • 博客等级: 中校
  • 技术积分: 645
  • 用 户 组: 普通用户
  • 注册时间: 2010-03-17 18:11
文章分类

全部博文(60)

文章存档

2011年(60)

我的朋友

分类: C/C++

2011-03-31 15:59:37

    我需要根据条件把一个复杂的表达式赋值给两个变量中的一个。可以用下边这样的代码吗?
((condition) ? a : b) = complicated expression;
   
    不能。? : 操作符, 跟多数操作符一样, 生成一个值, 而不能被赋值。换言之,
? : 不能生成一个“左值”。如果你真的需要, 你可以试试下面这样的代码:

*((condition) ? &a : &b) = complicated_expression;
阅读(212) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~