鱼C论坛

 找回密码
 立即注册
查看: 1000|回复: 2

[已解决]新手求助

[复制链接]
发表于 2021-10-8 18:47:07 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
这个++位置不一样是不是结果也不一样,然后这i跟j的输出数字为啥也变了啊,明明它俩也没赋值啊
最佳答案
2021-10-8 19:32:01
本帖最后由 傻眼貓咪 于 2021-10-8 19:34 编辑
#include <stdio.h>

int main()
{
    int a = 13, b = 13;
    int x, y;
    
    x = ++a; //先让 a 加 1,才赋值于 x
    y = b++; //先赋值 y,才让 b 加 1
    
    printf("%d\n", x);
    printf("%d", y);
    
    return 0;
}
x = ++a (表示 x 赋值 a+1 的值),y = b++(表示 y 赋值 b 的旧值,然后 b = b+1)
微信图片_20211008184505.png
微信图片_20211008184513.png
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2021-10-8 19:07:09 | 显示全部楼层
i ++ 是先执行 , 然后自增 1
++ i 是先自增 1 , 然后执行
i = 8 时 , ++i 先给自己加一 , 变成 9 , 然后 m 等于它
一个数字它只会存放一个内存 , 当 m = 9 时 , 上面的 i 也为 9
j 同理
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2021-10-8 19:32:01 | 显示全部楼层    本楼为最佳答案   
本帖最后由 傻眼貓咪 于 2021-10-8 19:34 编辑
#include <stdio.h>

int main()
{
    int a = 13, b = 13;
    int x, y;
    
    x = ++a; //先让 a 加 1,才赋值于 x
    y = b++; //先赋值 y,才让 b 加 1
    
    printf("%d\n", x);
    printf("%d", y);
    
    return 0;
}
x = ++a (表示 x 赋值 a+1 的值),y = b++(表示 y 赋值 b 的旧值,然后 b = b+1)
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-9-22 13:40

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表