在 C 中声明多个整型变量

Declare multiple integer variables in C

在开始之前,我的英语不好,所以我使用了翻译器,所以你可能不太理解。

我很抱歉。但是题目的内容很简单,所以理解起来应该没有难度。

某天记不太清了,看到了类似下面的一段代码

#include <stdio.h>
int main(){
int a,b,c = 1,d,e;
return 0;
}

那个时候,我也就放下了。但现在想想,我很好奇。 于是查看了C的值,打印出来的是1.

然后我把1改成0,确认C的值为零

此结果与其他数字相同。

我以前从未见过这样的代码。

同时,我知道要声明一些变量,我必须按照下面的代码来做。

int a = 1, b = 2, c = 3; 但这不是我所知道的。

经过多次实验,发现a,b,c,d,e是自变量

除了C,a,b,d,e包含垃圾值。

我想知道为什么这在语法上是可能的,为什么值不是按从左到右的顺序分配的。

再次抱歉使用了翻译器。

int a,b,c = 1,d,e;

相同
int a;
int b;
int c = 1;
int d;
int e;

除了 C,a,b,d,e 包含垃圾值 - 这是因为只有 C 被声明并初始化为值 1。其他的只是在中声明随机内存位置,因此具有垃圾值

我想知道为什么这在语法上是可能的 - 它仍然是一个正确的语法。请参阅@pmg

的回答

同时,我知道要声明一些变量,我必须按照下面的代码来做。 int a = 1, b = 2, c = 3; - 这里您实际上是在声明以及使用不同的值初始化它们。您始终可以在单个语句中声明任意数量的变量(相同数据类型)。