读书人

关于运算符优先级,该怎么处理

发布时间: 2012-03-09 16:54:57 作者: rapoo

关于运算符优先级

C/C++ code
int    val;char   str[10];val = (* (int *))&str[0];val =  * (int *)&str[0];


后两者有什么区别呢?

[解决办法]
可以这么写吗?
C/C++ code
val = (* (int *))&str[0];
[解决办法]
val = (* (int *))&str[0];
语法错误
[解决办法]
第一种没错吗……
[解决办法]
第二种正确

先 (), 后 suffix,最后 prefix
[解决办法]
第一种编译错误(gcc4.2):
error: expected primary-expression before 'int'

第二种需要从右向左分析即可



[解决办法]
第一种用错了

读书人网 >C语言

热点推荐