<output id="qn6qe"></output>

    1. <output id="qn6qe"><tt id="qn6qe"></tt></output>
    2. <strike id="qn6qe"></strike>

      亚洲 日本 欧洲 欧美 视频,日韩中文字幕有码av,一本一道av中文字幕无码,国产线播放免费人成视频播放,人妻少妇偷人无码视频,日夜啪啪一区二区三区,国产尤物精品自在拍视频首页,久热这里只有精品12

      歡迎來到 L H S 的博客

      早餐,人生的一半,今天也要元氣滿滿哦。| 鳳兮鳳兮歸故鄉(xiāng),遨游四海求其凰。鳳凰鳴矣,于彼高崗;梧桐生矣,于彼朝陽。| 死亡本是輪回的歸宿,因所愛而無畏。| 有一美人兮見之不忘,一日不見兮,思之如狂。邂逅你,是生生世世的宿命。。。。。|

      C++面向?qū)ο蟆谌巫鳂I(yè)

      作業(yè)題目:慕課學習第5章。并選出一個你認為有意義的知識點或難點,在電腦上運行代碼進行試驗,寫出完整的實驗驗證過程。用實驗證明該知識點的使用。

      淺析變量的生命周期
      一、生命周期的定義:變量在程序運行的時候所存在的時間段。

      二、分類:

      1、全局變量

      程序運行期間一直存在。

      2、全局靜態(tài)變量

      程序運行期間一直存在。

      3、局部變量

      當程序運行出了局部作用域時,變量消失,準確來說是銷毀,嘿嘿。

      4、靜態(tài)局部變量

      程序運行期間一直存在。(這和我寫這篇文章之前的認識似乎不一樣,下面我就清楚了)

      三、過程驗證

      看下面一段代碼:

      #include <iostream>
      
      using namespace std;
      int entire_a = 1;//賦了初值的全局變量
      int entire_b;//全局變量
      static int entire_c;//全局靜態(tài)變量
      
      void Local1()//驗證靜態(tài)局部變量只在第一次進入的時候做初始化,以后會跳過初始化語句,保留原來的值
      {
      	int i = 10;
      	while (i <= 20)
      	{
      	    static int n = 1;//靜態(tài)局部變量
      		n += 1;
      		static int local_t = 2;
      		i += local_t;
      	}
      }
      void Local2()
      {
      	int local_s = 6;//局部變量
      	cout << local_s;
      	static int local_t = 3;//靜態(tài)局部變量
      	cout << "local_t = " << local_t << ",local_s = " << local_s << endl;
      }
      
      int main()
      {
      	Local1();
      	cout << "a = " << entire_a << ",b = " << entire_b << ",c = " << entire_c << endl;//輸出全局變量的初始值
      	entire_a = 11;//改變?nèi)肿兞縜的值
      	entire_b = 121;//改變?nèi)肿兞縝的值
      	entire_c = 131;//改變?nèi)朱o態(tài)變量c的值
      	cout << "a = " << entire_a << ",b = " << entire_b << ",c = " << entire_c << endl;//輸出修改之后之后的全局變量值
      
      	Local2();//調(diào)用函數(shù)Local(),輸出局部變量local_s的值和局部靜態(tài)變量local_t的值
      	int local_s = 66;//重新定義的新的局部變量local_s
      	static int local_t = 33;//重新定義的新的局部變量local_t
      	cout << "local_t = " << local_t << ",local_s = " << local_s << endl;//可以輸出新的局部變量local_s和新的局部變量local_t
       }
      


      可以看出a,b,c在全局中一直存在,全局對象編譯時即分配內(nèi)存并初始化了,但local_s和local_t在主函數(shù)中使用時必須要重新定義(相當于重新生成一個新的變量,不是之前的了),不然就是下面這樣有問題

      靜態(tài)局部變量說明

      void Local1()//驗證靜態(tài)局部變量只在第一次進入的時候做初始化,以后會跳過初始化語句,保留原來的值
      {
      	int i = 10;
      	while (i <= 20)
      	{
      	    static int n = 0;//靜態(tài)局部變量
      		n += 1;
      		static int local_t = 2;
      		i += local_t;
      	}
      }
      




      從這三張圖中可以看到初始化n=0,在第一次使用后就被跳過了,可以得出:靜態(tài)局部變量相當于全局變量(只是只有在這個函數(shù)中能訪問,但是生命周期是和全局變量差不多的),函數(shù)退出之后變量還在,而且只在第一次進入的時候做初始化,以后會跳過初始化語句,保留原來的值。

      四、結(jié)論:

      1、變量的作用域不同于生命周期。作用域與生命周期是變量的屬性在空間和時間兩個維度的體現(xiàn)。作用域就是一個變量可以被引用的范圍,而生命周期就是這個變量可以被引用的時間段。在C++中有很多方法來指定一個變量的作用域和生命周期。最常見的,如:{ }、static修飾符等。
      2、存放在全局數(shù)據(jù)區(qū)的變量的生存周期存在于整個程序運行期間,而存放在棧中的數(shù)據(jù)則隨著函數(shù)等的作用域結(jié)束導致出棧而銷毀,除了靜態(tài)變量之外的局部變量都存放于棧中。不管是在全局還是局部聲明的static變量都存放于程序的全局變量區(qū)域。因此靜態(tài)局部變量生命周期在程序運行期間一直存在

      posted @ 2019-09-29 22:55  小囡囡不成仙  閱讀(185)  評論(0)    收藏  舉報
      主站蜘蛛池模板: 国产爆乳无码av在线播放| 国99久9在线 | 免费| 国产成人精品亚洲高清在线| 久久天天躁狠狠躁夜夜网站| 亚洲国产精品国自拍av| 国产成人精品亚洲资源| 四虎影视一区二区精品| 欧美成人h精品网站| 黑人巨大videos极度另类| 国产成人综合亚洲第一区| 中文精品无码中文字幕无码专区| 元码人妻精品一区二区三区9| 免费视频国产在线观看| 国产免费午夜福利片在线| 吴桥县| 亚洲欧美综合中文| 成人亚欧欧美激情在线观看| 日日躁狠狠躁狠狠爱| 国产精品十八禁一区二区| AV无码免费不卡在线观看| 亚洲中文无码手机永久| 国产精品成人一区二区不卡| 国产激情一区二区三区四区| 狠狠色丁香婷婷综合| 亚洲成人av在线综合| 国产99在线 | 免费| 一区二区三区无码免费看| 国产盗摄xxxx视频xxxx| 卢湾区| 国产在线拍揄自揄拍无码| AV老司机色爱区综合| 国产一区日韩二区欧美三区| 色偷偷天堂av狠狠狠在| 日本系列亚洲系列精品| 国产国拍精品av在线观看| 国产一区二区av天堂热| 尤物yw193无码点击进入 | 国产av不卡一区二区| 欧美丰满熟妇xxxx性| 国产热の有码热の无码视频| 久久夜色撩人国产综合av|