欧美日韩不卡一区二区三区,www.蜜臀.com,高清国产一区二区三区四区五区,欧美日韩三级视频,欧美性综合,精品国产91久久久久久,99a精品视频在线观看

C語言

C語言中指針與數(shù)組的區(qū)別

時(shí)間:2025-03-11 14:04:19 C語言 我要投稿
  • 相關(guān)推薦

C語言中指針與數(shù)組的區(qū)別

  通俗理解數(shù)組指針和指針數(shù)組,C語言中指針與數(shù)組有什么區(qū)別呢?應(yīng)該怎么去區(qū)分?下面是小編為大家整理的C語言中指針與數(shù)組的區(qū)別,歡迎參考~

  通俗理解數(shù)組指針和指針數(shù)組

  數(shù)組指針:

  eg:int( *arr)[10];

  數(shù)組指針通俗理解就是這個(gè)數(shù)組作為指針,指向某一個(gè)變量。

  指針數(shù)組:

  eg:int*arr[10];

  指針數(shù)組簡(jiǎn)言之就是存放指針的數(shù)組;

  ——數(shù)組并非指針&&指針并非數(shù)組

 。1)定義一個(gè)外部變量:

  eg:int value=10; int *p=&value;

  舉例:當(dāng)需要在一個(gè)函數(shù)中用這個(gè)變量時(shí):externa int*p;而非extern int p[];

  分析:當(dāng)用:extern int p[];這樣的形式時(shí),其實(shí)是:由于在定義這個(gè)變量的時(shí)候,是作為一個(gè)指針而定義的,則p指向的是 value的地址,當(dāng)p當(dāng)做一個(gè)數(shù)組被引入是,它其實(shí)存放的是value的地址,而并非指向value,導(dǎo)致調(diào)用出現(xiàn)錯(cuò)誤。

 。2)定義一個(gè)外部變量:

  eg:int arr[10]={0};

  舉例:當(dāng)需要在函數(shù)中引入這個(gè)外部變量時(shí):extern int arr[10];而非extern int *arr;

  分析:當(dāng)用extern int *arr;這樣的方式進(jìn)行引入是,實(shí)際上這樣是不對(duì)的,在定義這個(gè)變量的時(shí)候是作為一個(gè)整形數(shù)組來定義的,但是在聲明的時(shí)候是用指針來聲明的,通過數(shù)組聲明可以訪問到整個(gè)數(shù)組,但是通過指針實(shí)際上聲明的指針并非指向數(shù)組,而是指向arr[10]數(shù)組中首元素arr[0]地址的指針,導(dǎo)致訪問出現(xiàn)問題。

  ——二維數(shù)組與指針的關(guān)系

  定義一個(gè)二維數(shù)組arr[3][3],由于二維數(shù)組在內(nèi)存中也是按照順序存儲(chǔ),而并非我們所認(rèn)為的按照矩陣形式存儲(chǔ)的。所以,arr[3]其實(shí)就相當(dāng)與一個(gè)數(shù)組指針;指向arr[0][0],arr[1][0],arr[2][0].

  數(shù)組與指針的其他區(qū)別

 。1)指針保存的是數(shù)據(jù)的地址;

  數(shù)組是用來保存數(shù)據(jù)的。

 。2)指針訪問數(shù)據(jù)是通過數(shù)據(jù)的地址進(jìn)行解引用,間接訪問的;

  數(shù)組訪問數(shù)據(jù)是直接的。

 。3)指針通常用于動(dòng)態(tài)數(shù)據(jù)結(jié)構(gòu);

  數(shù)組用于存放固定數(shù)目而且類型相同的數(shù)據(jù)。

  (4)指針通常指向匿名數(shù)據(jù);

  數(shù)組通常存放已知的。

  C語言簡(jiǎn)介

  C語言是一門面向過程的計(jì)算機(jī)編程語言,與C++、C#、Java等面向?qū)ο缶幊陶Z言有所不同。C語言的設(shè)計(jì)目標(biāo)是提供一種能以簡(jiǎn)易的方式編譯、處理低級(jí)存儲(chǔ)器、僅產(chǎn)生少量的機(jī)器碼以及不需要任何運(yùn)行環(huán)境支持便能運(yùn)行的編程語言。C語言描述問題比匯編語言迅速、工作量小、可讀性好、易于調(diào)試、修改和移植,而代碼質(zhì)量與匯編語言相當(dāng)。C語言一般只比匯編語言代碼生成的目標(biāo)程序效率低10%-20%。因此,C語言可以編寫系統(tǒng)軟件。

  當(dāng)前階段,在編程領(lǐng)域中,C語言的運(yùn)用非常之多,它兼顧了高級(jí)語言和匯編語言的優(yōu)點(diǎn),相較于其它編程語言具有較大優(yōu)勢(shì)。計(jì)算機(jī)系統(tǒng)設(shè)計(jì)以及應(yīng)用程序編寫是C語言應(yīng)用的兩大領(lǐng)域。同時(shí),C語言的普適較強(qiáng),在許多計(jì)算機(jī)操作系統(tǒng)中都能夠得到適用,且效率顯著。

  C語言擁有經(jīng)過了漫長(zhǎng)發(fā)展歷史的完整的理論體系,在編程語言中具有舉足輕重的地位。

【C語言中指針與數(shù)組的區(qū)別】相關(guān)文章:

c語言知識(shí):數(shù)組指針和指針數(shù)組的區(qū)別07-27

C語言中指針與數(shù)組的詳解及區(qū)別09-07

C語言數(shù)組與指針詳解08-15

C語言指針數(shù)組的概念07-19

如何使用C語言數(shù)組指針09-14

C語言-15:多維數(shù)組與指針07-25

c語言指針運(yùn)用中堆和棧的區(qū)別10-06

C語言指針和數(shù)組的學(xué)習(xí)方法10-16

c語言數(shù)組指針變量的說明和使用07-26