課程
/后端開發
/C
/C語言入門
變量存儲類別,這些東西怎么理解呀?有點看不懂了,求大神指導!???
?? 謝謝您
2015-08-09
源自:C語言入門 5-11
正在回答
靜態局部變量屬于靜態存儲類別,在靜態存儲區內分配存儲單元,在程序整個運行期間都不釋放;靜態局部變量在編譯時賦初值,即只賦初值一次;如果在定義局部變量時不賦初值的話,則對靜態局部變量來說,編譯時自動賦初值0(對數值型變量)或空字符(對字符變量)。
#include <stdio.h>
void fn()
{
? ? ? int x = 1; ? //定義靜態局部變量
? ? x*=2;
? ? printf("x=%d\n",x); ? ??
}
int main()
? ? int i;
? ? for(i=0;i<5;i++)
? ? {
? ? ? ? fn();
? ? }
? ? extern int x; ? ? ?//調用外部變量
? ? printf("x=%d\n",x);
? ? return 0;
int x=100;
不加static結果是2?2?2?2?2?100;這里加上static結果就變成2?4?8?16?36?100這是怎么計算的呢???
左側內容講解中,哪塊看不懂,截個圖
逆水中的魚 提問者
舉報
C語言入門視頻教程,帶你進入編程世界的必修課-C語言
2 回答變量存儲類別
1 回答變量存儲類別
3 回答變量存儲類別
2 回答5.11變量存儲類別
Copyright ? 2025 imooc.com All Rights Reserved | 京ICP備12003892號-11 京公網安備11010802030151號
購課補貼聯系客服咨詢優惠詳情
慕課網APP您的移動學習伙伴
掃描二維碼關注慕課網微信公眾號
2015-08-11
靜態局部變量屬于靜態存儲類別,在靜態存儲區內分配存儲單元,在程序整個運行期間都不釋放;靜態局部變量在編譯時賦初值,即只賦初值一次;如果在定義局部變量時不賦初值的話,則對靜態局部變量來說,編譯時自動賦初值0(對數值型變量)或空字符(對字符變量)。
2015-08-10
#include <stdio.h>
void fn()
{
? ? ? int x = 1; ? //定義靜態局部變量
? ? x*=2;
? ? printf("x=%d\n",x); ? ??
}
int main()
{
? ? int i;
? ? for(i=0;i<5;i++)
? ? {
? ? ? ? fn();
? ? }
? ? extern int x; ? ? ?//調用外部變量
? ? printf("x=%d\n",x);
? ? return 0;
}
int x=100;
2015-08-10
左側內容講解中,哪塊看不懂,截個圖