C语言中定义整数的一个小疑问

下面是一个关于任意整数逆序的C语言代码 

#include<stdio.h>
int main(){
	int x,digit,ret;
	printf("请任意输入一个整数\n");
	scanf("%d",&x);
	while(x>0){
		digit = x % 10;
		ret = ret * 10 + digit;
		x /= 10;
	}
	printf("你输入的数字的逆序为%d\n",ret); 
	return 0;
}

代码运行的结果没有什么问题,运行结果如下:

这时候有一个小疑问就是:变量ret只是定义为了int类型,并未指定

int ret = 0;

当程序运行时ret在未初始换的情况下,应该为计算机内任意一个地址中的字符,而不应该正好是预想中的0呀,这是怎么回事呢?

猜你喜欢

转载自blog.csdn.net/Leibos/article/details/81072426