卖逼视频免费看片|狼人就干网中文字慕|成人av影院导航|人妻少妇精品无码专区二区妖婧|亚洲丝袜视频玖玖|一区二区免费中文|日本高清无码一区|国产91无码小说|国产黄片子视频91sese日韩|免费高清无码成人网站入口

c語言變量作用域 C語言全局變量和局部變量會(huì)沖突嗎?為什么?

C語言全局變量和局部變量會(huì)沖突嗎?為什么?C語言中,看你怎么安放全局變量和局部變量了。如果你把全局變量和局部變量放在一個(gè)代碼文件內(nèi),那么就是沖突的。這么說不明顯,我寫個(gè)C程序代碼你就知道了,如下圖所示

C語言全局變量和局部變量會(huì)沖突嗎?為什么?

C語言中,看你怎么安放全局變量和局部變量了。如果你把全局變量和局部變量放在一個(gè)代碼文件內(nèi),那么就是沖突的。這么說不明顯,我寫個(gè)C程序代碼你就知道了,如下圖所示:



在這段C程序中,我在主函數(shù)main之外定義了一個(gè)全局變量para,并且給了一個(gè)初始值1。在C程序主函數(shù)main里面,我又定義了一個(gè)變量para,跟主函數(shù)之外的那個(gè)para是同名。

這里,C程序主函數(shù)外面的那個(gè)變量生命周期在整個(gè)代碼中有效,而主函數(shù)的這個(gè)變量只在主函數(shù)內(nèi)有效。

這也就是說,在C程序主函數(shù)里操作para變量,實(shí)際上操作的是主函數(shù)中的變量,外面的para變量值還是1。在這段C程序中,main函數(shù)中的para變量把外面的變量para給遮住了。

所以,同學(xué)們在學(xué)習(xí)C語言時(shí),一定要注意這個(gè)全局變量被局部同名變量遮住的問題,同時(shí)也要了解變量的作用域和生命周期。

學(xué)習(xí)c語言之前,可以學(xué)哪些相關(guān)的基礎(chǔ)?買書的話,有沒有什么好的推薦?

C語言不是一個(gè)獨(dú)立的課程,要想學(xué)好C語言,有許多的基礎(chǔ)課程需要學(xué)習(xí),否則你在學(xué)習(xí)C語言過程中會(huì)感到吃力。要打好的基礎(chǔ)大概有以下幾個(gè):

一、計(jì)算機(jī)組成

這是最簡單的基礎(chǔ)了。

  • 計(jì)算機(jī)組成分為顯示器、鍵盤、鼠標(biāo),這在C語言中叫做輸入輸出設(shè)備。有許多的C語言IO函數(shù)庫是用來操作輸入輸出設(shè)備的。
  • 計(jì)算機(jī)主機(jī)有CPU,內(nèi)存,外存的概念。C語言中有寄存器變量,這是跟CPU有關(guān)的;有指針概念,這是跟內(nèi)存有關(guān)的;有內(nèi)存分配函數(shù),這是跟內(nèi)存有關(guān)的;有文件IO函數(shù)庫,這是用來讀取寫入外存的函數(shù),是跟外存有關(guān)的。
二、計(jì)算機(jī)導(dǎo)論

這也是必須要學(xué)習(xí)的基礎(chǔ)。

  • 進(jìn)制。C語言的數(shù)據(jù)可以用二進(jìn)制表示,也可以用八進(jìn)制表示,也可以用十六進(jìn)制表示。如果不懂進(jìn)制,學(xué)這些你會(huì)一頭霧水。
  • 流程圖。C語言寫代碼時(shí)一般都會(huì)畫算法流程圖,了解自己的程序會(huì)如何一步一步的執(zhí)行才能開始寫代碼。流程圖的概念很重要。
  • 算法。算法是C語言代碼的靈魂,寫代碼表面是在寫代碼,實(shí)際是在寫一個(gè)算法。沒有算法,寫C語言代碼那就是自娛自樂,不解決實(shí)際問題。
三、數(shù)學(xué)知識(shí)

都說數(shù)學(xué)是計(jì)算機(jī)的基礎(chǔ),這一點(diǎn)也不錯(cuò)。比如C語言中有一個(gè)經(jīng)典的程序是找素?cái)?shù)、找合數(shù)等,這些都是數(shù)學(xué)概念。如果都不知道素?cái)?shù)、合數(shù)的數(shù)學(xué)定義,C語言代碼壓根就寫不出。

上面只是淺薄地說了下學(xué)習(xí)C語言需要的基礎(chǔ),我們還可以繼續(xù)交流。至于學(xué)習(xí)書籍,我之前推薦了幾本,可以看看我以前的問答。