亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

C語言由淺入深了解變量的應用

 更新時間:2022年05月09日 14:48:30   作者:龜π氣功  
這篇文章主要介紹了C語言的變量,變量是C語言語法和語義中一個很重要的知識點,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪

1. 變量的存儲類別

內存

  1. 物理內存:實際的存儲設備
  2. 虛擬內存:操作系統(tǒng)虛擬出來的內存
  3. 操作系統(tǒng)會在物理內存和虛擬內存之間做映射。
  4. 在32位系統(tǒng)下,每個進程的尋址范圍是4G, 0x00 00 00 00 ~ 0xff ff ff ff
  5. 在寫應用程序的時候,我們看到的都是虛擬地址
  6. 在32位操作系統(tǒng)中,虛擬內存被分為兩個部分,3G的用戶空間和1G的內核空間,其中用戶空間是當前進程私有的,內核空間是一個系統(tǒng)中所有進程公有的。

虛擬內存分區(qū)(運行程序時進行分區(qū)) 

  1. 堆:在動態(tài)申請內存的時候在堆里開辟內存
  2. 棧:主要存放局部變量
  3. 靜態(tài)全局區(qū):(1)未初始化的靜態(tài)全局區(qū):靜態(tài)變量(定義便來嗯的時候,前面加static修飾),或全局變量,沒有初始化的,存在此區(qū)。(2)初始化的靜態(tài)全局區(qū):全局變量,靜態(tài)變量,賦值的存在此區(qū)。
  4. 代碼區(qū):存放程序代碼
  5. 文字常量區(qū):存放常量

2. 全局變量

普通的全局變量

概念:在函數(shù)外部定義的變量

#include<stdio.h>
int a = 10;  // 普通全局變量
int main(){
    printf("a的數(shù)值是%d\n",a);
    return 0;
}

作用范圍:程序的所有地方,只不過用之前需要聲明,例如 extern int a;

生命周期:一直到程序運行結束。

注意:定義普通全局變量時,如果不賦值,默認為0

靜態(tài)全局變量

概念:定義全局變量的時候,前面加一個static修飾

作用范圍:static限定了靜態(tài)全局變量的作用范圍,只能在它定義的.c文件中有效

聲明周期:直到程序結束

注意:不賦值默認為0

#include<stdio.h>
static int a = 10;  // 靜態(tài)全局變量,不能跨文件使用
int main(){
    printf("a的數(shù)值是%d\n",a);
    return 0;
}

3. 局部變量

普通局部變量

概念:在函數(shù)內部定義的,或者復合語句中定義的變量

作用范圍:在函數(shù)中定義的變量,在函數(shù)中有效。在復合語句中定義的,在復合語句中有效

生命周期:在函數(shù)調用之前,局部變量不占用空間,調用的時候才為局部變量開辟空間,函數(shù)結束了,局部變量就釋放了。復合語句中也是如此。

#include<stdio.h>
void myfunc(){
    int a = 10;   // 局部變量
    printf("a的數(shù)值是%d\n",a);
    return;
}
int main(){
    myfunc();
  //  printf("a的數(shù)值是%d\n",a); 這條語句是錯誤的,main不可以調用myfunc中的變量a
    return 0;
}

靜態(tài)局部變量

概念:定義局部變量的時候,前面加static修飾

作用范圍:在它定義的函數(shù)或復合語句中有效

生命周期:第一次調用函數(shù)的時候,開辟空間賦值,函數(shù)結束后,不釋放,以后再調用函數(shù)的時候,就不再為其開辟空間,也不賦初值,用的是以前哪個變量。

#include<stdio.h>
void myfunc(){
    static int a = 10;   // 靜態(tài)局部變量
    printf("a的數(shù)值是%d\n",a);
    return;
}
int main(){
    myfunc();
    return 0;
}

4. const不可賦值變量

const 關鍵字用來聲明不可賦值的變量

#include<stdio.h>
int main(){
    const int num;
    num = 7;  // 這條語句必報錯
    printf("num是%d\n",num);
    return 0;
}

報錯如下:

既然不可以賦值,那有什么用呢?可以在初始化的時候進行賦值!

#include<stdio.h>
int main(){
    const int num = 8;
    printf("num是%d\n",num);
    return 0;
}

5. volatile多變的變量

volatile關鍵字用來聲明多變的變量,這種變量的內容隨時可能被改變,而且這種改變的原因不是我們的語句造成的

到此這篇關于C語言由淺入深了解變量的應用的文章就介紹到這了,更多相關C語言變量內容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!

相關文章

  • Qt/C++編寫視頻監(jiān)控系統(tǒng)之自定義音柱顯示功能

    Qt/C++編寫視頻監(jiān)控系統(tǒng)之自定義音柱顯示功能

    通過音柱控件實時展示當前播放的聲音產生的振幅的大小,得益于音頻播放組件內置了音頻振幅的計算,可以動態(tài)開啟和關閉,開啟后會對發(fā)送過來的要播放的聲音數(shù)據(jù),這篇文章主要介紹了Qt/C++編寫視頻監(jiān)控系統(tǒng)之自定義音柱顯示功能,需要的朋友可以參考下
    2024-01-01
  • C++ 實現(xiàn)自定義類型的迭代器操作

    C++ 實現(xiàn)自定義類型的迭代器操作

    這篇文章主要介紹了C++ 實現(xiàn)自定義類型的迭代器操作,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2020-12-12
  • C++實現(xiàn)LeetCode(14.最長共同前綴)

    C++實現(xiàn)LeetCode(14.最長共同前綴)

    這篇文章主要介紹了C++實現(xiàn)LeetCode(14.最長共同前綴),本篇文章通過簡要的案例,講解了該項技術的了解與使用,以下就是詳細內容,需要的朋友可以參考下
    2021-07-07
  • C++面試八股文之std::string實現(xiàn)方法

    C++面試八股文之std::string實現(xiàn)方法

    這篇文章主要介紹了C++面試八股文:std::string是如何實現(xiàn)的,本文給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2023-06-06
  • STl中的排序算法詳細解析

    STl中的排序算法詳細解析

    全排序即把所給定范圍所有的元素按照大小關系順序排列。sort采用的是成熟的"快速排序算法"(目前大部分STL版本已經(jīng)不是采用簡單的快速排序,而是結合內插排序算法)
    2013-09-09
  • C++中靜態(tài)存儲區(qū)與棧以及堆的區(qū)別詳解

    C++中靜態(tài)存儲區(qū)與棧以及堆的區(qū)別詳解

    本篇文章是對C++中靜態(tài)存儲區(qū)與棧以及堆的區(qū)別進行了詳細的分析介紹,需要的朋友參考下
    2013-05-05
  • C++實現(xiàn)簡單單向鏈表

    C++實現(xiàn)簡單單向鏈表

    這篇文章主要為大家詳細介紹了C++實現(xiàn)簡單單向鏈表,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2020-05-05
  • C語言實現(xiàn)關機小程序

    C語言實現(xiàn)關機小程序

    這篇文章主要為大家詳細介紹了C語言實現(xiàn)關機小程序,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2020-02-02
  • C語言數(shù)組全面詳細講解

    C語言數(shù)組全面詳細講解

    數(shù)組是一組有序的數(shù)據(jù)的集合,數(shù)組中元素類型相同,由數(shù)組名和下標唯一地確定,數(shù)組中數(shù)據(jù)不僅數(shù)據(jù)類型相同,而且在計算機內存里連續(xù)存放,地址編號最低的存儲單元存放數(shù)組的起始元素,地址編號最高的存儲單元存放數(shù)組的最后一個元素
    2022-05-05
  • C語言通過深度優(yōu)先搜索來解電梯問題和N皇后問題的示例

    C語言通過深度優(yōu)先搜索來解電梯問題和N皇后問題的示例

    深度優(yōu)先搜索即是對一個新發(fā)現(xiàn)的節(jié)點上如果還關聯(lián)未探測到的邊,就沿此邊探測下去,直到發(fā)現(xiàn)從原點可達的所有點為止,這里我們就來展示C語言通過深度優(yōu)先搜索來解電梯問題和N皇后問題的示例
    2016-06-06

最新評論