sizeof(++i+ ++i)
来源:互联网 发布:nginx conf break 编辑:程序博客网 时间:2024/05/16 19:37
#include <stdio.h> int main(char *argv[], int *argc) { int i=3; int j; j = sizeof(++i+ ++i); printf("i=%d j=%d", i ,j); } 上述程序,输出结果为i=3,j=4
解答::
根据C99规范, sizeof是一个编译时刻就起效果的运算符,在其内的任何运算都没有意义, j = sizeof(++i+++i); 在编译的时候被翻译成 j=sizeof((++i+++i的数据类型)) 也就是 j = sizeof(int); 也就是 j= 4; (32bit系统,如果是16位系统,则j=2) 然后才会继续编译成最终的程序,当然在最终程序执行的时候,自然不会执行任何++i了。
- sizeof(i++)
- sizeof(++i+ ++i)
- sizeof(++i+ ++i)
- sizeof(++i+ ++i)
- sizeof(++i+ ++i)
- sizeof(i++),sizeof(fun())
- sizeof(++i) 结果
- sizeof(++i) 结果
- sizeof(i++)是多少?
- sizeif(i++).sizeof(++i) 的问题
- i++与++i的区别及sizeof的用法
- C语言之sizeof详解 eg: int i = 10; printf("sizeof(i++) is: %d\n",sizeof(++i));
- I
- I
- ++i
- I
- I
- i
- 谨以此文献给所有想当程序员的朋友
- CentOS下配置SSH密钥远程登陆
- 解决easyui列标题和列内容不对齐的问题
- 变形算法
- android Binder工作流程
- sizeof(++i+ ++i)
- 卡塔兰数
- CentOS 修改IP地址, DNS, 网关
- listview 适应 listviewitem 高度
- HP unix集群一个节点无法服务遇到的诡异问题
- C语言解析多格式的lrc文件
- centos系统忘记root密码怎么办
- CentOS设置新用户
- python列表去重方法