最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

C語言之數(shù)組名與數(shù)組起始地址的關(guān)系解析

 更新時間:2022年07月13日 14:42:08   作者:KingOfMyHeart  
這篇文章主要介紹了C語言之數(shù)組名與數(shù)組起始地址的關(guān)系,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教

數(shù)組名與數(shù)組起始地址的關(guān)系

void show(int *arr,int len) {
    cout << "in show(): arr lenth = " << sizeof(arr) << "\n";
    for (int i = 0; i < len; ++i) {
        cout << arr[i] << " ";
    }
    cout << "\n";
}

int main()
{
    int arr[] = {1,2,3,4,5,6,7};
    cout << "in main(): arr lenth = " << sizeof(arr) << "\n";
    cout << "in main(): &arr = " << arr << "&arr+1 = "<<&arr+1<<"\n";
    show(arr,sizeof(arr)/sizeof(arr[0]));
    return 0;
}

數(shù)組名arr表示整個數(shù)組的兩種情況

  • 在同一作用域下,或者說在同一個函數(shù)中,sizeof(arr)表示的是整個數(shù)組占用的空間大??;
  • 在同一作用域下,或者說在同一個函數(shù)中,&arr + 1,表示加整個數(shù)組大小。

其余情況都表示數(shù)組的起始地址

數(shù)組名作為函數(shù)參數(shù)傳遞時會退化成一根指針,表示數(shù)組的起始地址,大小等于4字節(jié),所以就無法求出數(shù)組的長度。

小結(jié):數(shù)組作為參數(shù)傳遞,除了傳遞數(shù)組的起始地址,另外一定要傳遞數(shù)組的長度,否則可能存在大問題。

數(shù)組名為什么代表首地址

對于一個數(shù)組,比如int a[4],它的數(shù)組名a代表首地址,這是為什么呢,看了很多解釋,感覺都很扯淡,其實如果我們從匯編的角度來看數(shù)組,就非常簡單了

數(shù)組的0.1.2.3都是偏移地址,而a 就是段地址, 這個段地址的值根 第一個元素的地址是一樣的,所以指向第一個元素,段地址中這跟匯編的尋址方式有 異曲同工的地方,就是這么簡單,a代表一個首地址,然后加上偏移量就可以定位每個數(shù)組的地址。

以上為個人經(jīng)驗,希望能給大家一個參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • 關(guān)于C++友元類的實現(xiàn)講解

    關(guān)于C++友元類的實現(xiàn)講解

    今天小編就為大家分享一篇關(guān)于關(guān)于C++友元類的實現(xiàn)講解,小編覺得內(nèi)容挺不錯的,現(xiàn)在分享給大家,具有很好的參考價值,需要的朋友一起跟隨小編來看看吧
    2018-12-12
  • 快速入門的一些C\C++書籍

    快速入門的一些C\C++書籍

    這篇文章為大家精心推薦了一些快速入門的一些C\C++書籍,希望大家可以喜歡,對這門語言可以產(chǎn)生興趣,需要的朋友可以參考下
    2015-12-12
  • C/C++實現(xiàn)字符串模糊匹配

    C/C++實現(xiàn)字符串模糊匹配

    本文分別給大家介紹了2個C++在Linux平臺和windows平臺下實現(xiàn)字符串模糊匹配的方法,基本的核心思想都是一樣的,均是使用fnmatch函數(shù),有需要的小伙伴可以參考下。
    2016-04-04
  • C語言實現(xiàn)學(xué)生成績管理系統(tǒng)

    C語言實現(xiàn)學(xué)生成績管理系統(tǒng)

    這篇文章主要為大家詳細介紹了C語言實現(xiàn)學(xué)生成績管理系統(tǒng),具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2018-01-01
  • C++ OpenCV實戰(zhàn)之手寫數(shù)字識別

    C++ OpenCV實戰(zhàn)之手寫數(shù)字識別

    這篇文章主要為大家詳細介紹了如何使用machine learning機器學(xué)習(xí)模塊進行手寫數(shù)字識別功能,文中的示例代碼講解詳細,感興趣的可以了解一下
    2022-08-08
  • C++ OpenCV實現(xiàn)抖音"藍線挑戰(zhàn)"特效

    C++ OpenCV實現(xiàn)抖音"藍線挑戰(zhàn)"特效

    這篇文章主要介紹了如何使用OpenCV C++ 實現(xiàn)抖音上的特效“藍線挑戰(zhàn)”。文中的示例代碼講解詳細,對我們學(xué)習(xí)OpenCV有一定的幫助,需要的可以參考一下
    2022-01-01
  • C++實現(xiàn)LeetCode(22.生成括號)

    C++實現(xiàn)LeetCode(22.生成括號)

    這篇文章主要介紹了C++實現(xiàn)LeetCode(22.生成括號),本篇文章通過簡要的案例,講解了該項技術(shù)的了解與使用,以下就是詳細內(nèi)容,需要的朋友可以參考下
    2021-07-07
  • 從頭學(xué)習(xí)C語言之二維數(shù)組

    從頭學(xué)習(xí)C語言之二維數(shù)組

    這篇文章主要為大家詳細介紹了C語言之二維數(shù)組,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下,希望能夠給你帶來幫助
    2022-01-01
  • C++計算圖任意兩點間的所有路徑

    C++計算圖任意兩點間的所有路徑

    這篇文章主要為大家詳細介紹了C++求圖任意兩點間的所有路徑 ,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2017-10-10
  • 淺析c++ 宏 #val 在unicode下的使用

    淺析c++ 宏 #val 在unicode下的使用

    以下是對c++中宏#val在unicode下的使用方法進行了詳細的分析介紹,需要的朋友可以參考下
    2013-07-07

最新評論

历史| 沅江市| 洛扎县| 江永县| 抚远县| 鸡西市| 康平县| 益阳市| 房产| 同江市| 秭归县| 河津市| 合山市| 萝北县| 图们市| 河南省| 凤城市| 邯郸市| 本溪市| 玛沁县| 屯昌县| 区。| 通州区| 武功县| 台湾省| 长阳| 井冈山市| 中牟县| 哈尔滨市| 银川市| 武隆县| 嘉定区| 化隆| 班戈县| 新源县| 库车县| 横峰县| 正宁县| 隆回县| 桦南县| 大埔县|