/*
三目运算符
在C语言中 表达式的结果 放在 寄存器
1、在C语言中,表达式的返回值是 变量的值
在C++中,表达式返回的是变量的本身
2、c++是如何做到的
让表达式返回一个内存空间 内存首地址 指针
3、本质
c++编译器帮程序员完成了 取地址的工作
*/
#if 1
void test()
{
int a = 10;
int b = 90;
(a < b ? a : b) = 30;//在c语言中是编译不过的
printf("a = %d b = %d\n", a, b);
*(a < b ? &a : &b) = 50;//在c语言中应该用指针 当左值必须有内存空间
printf("a = %d\n", a);
}
#endif
07_三目运算符增强
最新推荐文章于 2024-01-06 15:09:39 发布