并没有对a赋值,为什么运行完输出的结果是1992732927呢?另外,我把int a;换成char a;相当于定义一个字符型变量,同样不对其赋值并以整数型式%d输出,运行结果怎么又变成118了呢?还有,我做了点改动,把上面的程序变成#include#includemain(){int b;int a;
答案解析 查看更多优质解析 解答一 举报 一般情况 没有加static 默认为auto 型此时 不给初值,变量的 初值是随机的但是 如果加了 static 不给初值 变量的初值是默认的 0指针也是一样,其实 NULL 的值 就是 0只是它不代表任何地址谢谢 解析看不懂?免费查看同类题视频解析查看解答 ...
事实上,如果使用未初始化的局部变量,编译器一般会给出警告。 c语言中,若在函数内部定义变量时没有给变量赋予初值,如int a;,则a的初始值为 局部变量未初始化就是一个随机值,如果声明的int为全局变量会默认初始化为0 c语言 定义变量并赋值 只对x1进行了赋值。 =赋值运算符,逗号起到分割作用,把你要申请的两...
那么值为0
程序目的:弄清C语言中的变量未赋值时的初始值问题 测试结果:在C语言中,全局变量和静态变量,如果没有赋初值,则默认初始值int,float,char,空指针 分别为0.0.0.'\0',0~~~除了全局变量和静态变量以外,其它变量如果没有赋初值,则默认初始值为 内存中
这个是内存里随机存在的数值,尽管你没有给变量名赋值,但是你在变量申明时已经给它分配了内存空间,那里本来就有数值的,这个是随机的
前面讲过,int i; 运行的结果是将变量 i 和内存中的某一个单元产生关联。然后变量 i 就代表那个内存单元了,要想操作该内存单元只需要通过变量i就可以了。 在上面程序中没有给这个内存单元赋值就把它给输出了,所以问题就出在这里。你只定义了变量 i,但是没有给它赋值并把它输出了。所以关键就是看看 i 里面放...
一般情况 没有加static 默认为auto 型 此时 不给初值,变量的 初值是随机的 但是 如果加了static 不给初值 变量的 初值是默认的 0 指针也是一样,其实 NULL 的值 就是0 只是它不代表任何地址 谢谢00分享举报为您推荐 c语言中返回值是什么意思 c语言printf是什么意思 c语言中scanf是什么意思 c语言char类型...
int main (int argc, char const *argv[]){ /* code */ return 0;} 其中argc表示参数个数,argv是参数名指针数组 因为程序名也是参数的一个,所以一般情况下不带参数的程序运行的时候 ,argc就为1 假如你的程序名为t.exe, 你可以那它带参数运行,比如t.exe good,那么打印的结果就是2(两...
c语言变量没有赋值可以进行运算吗? 答: 可以运算,但运算结果未可知; 其实运算中遇到没有赋值的变量时, C语言会随机调用内存中任一地址的数值; 倘此段代码与其他代码拼接、很有可能达成某种功能; 正因如此,C语言的灵活性很高。 …… 追问: 比如这样int a=15,b;b=a++,a++,b-(--a);printf("%d",b);...