gpt4 book ai didi

c - C中奇怪的多变量赋值语句

转载 作者:行者123 更新时间:2023-12-02 05:49:39 24 4
gpt4 key购买 nike

我以为我了解 C 中的赋值操作,但我正在尝试学习一些图形编程,但我遇到了这个让我感到困惑的初始化语句:

/* request auto detection */
int gdriver = DETECT, gmode, errorcode

我使用这些元素编译了一个小的工作程序,结果似乎是赋值和声明的组合。 RHS 上的第一个变量被分配给 LHS 变量,其余的被声明(但未初始化)为 LHS 变量的类型...

#include <stdio.h>

int main(){

int a = 0; // Comment out this line and things break
int d = a, b, c;

printf("%d %d %d %d", a, b, c, d);

return 0;
}

为什么要使用这样一行,它似乎同时执行了 2 个不相关的操作?

最佳答案

声明

int d = a, b, c;

在功能上等同于

int d = a;
int b;
int c;

变量d被初始化为a的值,bc都没有被初始化。

关于c - C中奇怪的多变量赋值语句,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24727181/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com