C中的++,请帮忙解释一下
int a=2;
int i;
i=(a++)+(++a)+(a++)+(++a)+(a++);
printf("%d",i);
结果是20,请解读
这已经不是月经贴了,谁统计过今天出现了几次…………
我撞墙
既然你见过很多,那你给一个地址我好吗?我去看就是了,不用撞墙。
哇,又是这种问题
这是未定义行为……
等于多少,这个要看编译喜欢怎么干……
此类问题,标准答案就是“不知道它会等于多少,它等于多少都有可能,都不违背标准,但是不应该写这样的代码”……
如果楼主想知道为什么在自己的机子上执行结果是20,请自行查看反汇编……
结果不确定,不同的编译器有不同的解读
如果我说是在VC下呢?
vc6可能跟vc7的结果不一样
vc7可能跟vc8的结果不一样
vc8可能跟vc9的结果不一样
vc9可能跟vc10的结果不一样
vc10的debug版可能跟vc10的release版不一样……
楼主想知道具体的为什么,请自行查看反汇编……
经典……
不就是要弄清楚:++i和i++ 的区别吗
可恶啊~~
要向版主们建议一下放个 FAQ 在置顶区……
我要是老板谁这么写程序立马扣工资~~
这个帖子有点怪~~~
相关问答:
运行环境是unix,我用ue以ftp方式连到unix上,然后在ue中编写c程序,但在unix下用vi看程序时,每行后面都多了一个^M,这个应该是unix的换行符,每次只能删除一遍然后才能编译,否则会报错,请问这是在ue中字符编码的 ......
你还在新手阶段徘徊吗?你还在发愁应该怎么继续学习C和C++吗?
群 29152388 为你解开疑惑,欢迎新手老手的加入,你的加入就是其它人学习的动力
楼下出门踩便便
算你狠
新手的福音啊···终于 ......
写了一段程序
C/C++ code:
..
MYSQL* mysql;
MYSQL_RES* res;
//我想实现一个查看有没有 mysql结构,如果没有就连接。
void connect()
{
mysql_init(mysql);
mysql_realconnect(. ......
C/C++ 2009-9专家榜
名次 专家名称 专家分 个人描述
1 mstlq (面色铁路桥) 5843 因为菜,所以努力学习中
2 whg01 (及时结贴是美德)&n ......
下面是我的代码 从内存写入文件正确 但从文件读入内存都是乱码 而且程序崩溃 请c高手指点
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
struct inf
{
& ......