課程
/后端開發(fā)
/C
/C語言入門
這一題中x的值在不同的程序段是如何變化的 ?應(yīng)該以怎樣一個原則去看其值
2016-03-12
源自:C語言入門 5-10
正在回答
#include <stdio.h>
int x = 77;//聲明全局變量x=77
void fn1()
{
? ? printf("fn1(): x=%d\n", x); ? ? //此處x是局部變量,在fn1()中未賦值,因此這時x的值跟隨全局變量,為77
}
int main()
? ? int x = 10;//main函數(shù)中的變量,此時x的值為10
? ? if(x>0)
? ? {
? ? ? ? int x = 100;//if 塊中的x變量,值為100
? ? ? ? x /= 2;//x=x/2,值為50
? ? ? ? printf("if語句內(nèi), x=%d\n", x);//x=50 ? ? ??
? ? }
? ? printf("main方法內(nèi), x=%d\n", x);//x=10
? ? fn1();
? ? return 0;
這里是局部變量和全局變量的區(qū)別,在源程序的某個部分,局部變量的優(yōu)先級是高于全局變量的。同時,在某個程序段中,全局變量和局部變量的名字是可以相同的。
InternetTall 提問者
舉報
C語言入門視頻教程,帶你進入編程世界的必修課-C語言
1 回答局部變量與全局變量
1 回答關(guān)于全局變量和局部變量
2 回答關(guān)于全局變量和局部變量
1 回答局部與全局變量
Copyright ? 2025 imooc.com All Rights Reserved | 京ICP備12003892號-11 京公網(wǎng)安備11010802030151號
購課補貼聯(lián)系客服咨詢優(yōu)惠詳情
慕課網(wǎng)APP您的移動學習伙伴
掃描二維碼關(guān)注慕課網(wǎng)微信公眾號
2016-03-13
#include <stdio.h>
int x = 77;//聲明全局變量x=77
void fn1()
{
? ? printf("fn1(): x=%d\n", x); ? ? //此處x是局部變量,在fn1()中未賦值,因此這時x的值跟隨全局變量,為77
}
int main()
{
? ? int x = 10;//main函數(shù)中的變量,此時x的值為10
? ? if(x>0)
? ? {
? ? ? ? int x = 100;//if 塊中的x變量,值為100
? ? ? ? x /= 2;//x=x/2,值為50
? ? ? ? printf("if語句內(nèi), x=%d\n", x);//x=50 ? ? ??
? ? }
? ? printf("main方法內(nèi), x=%d\n", x);//x=10
? ? fn1();
? ? return 0;
}