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

詳解C語(yǔ)言中的指針與數(shù)組的定義與使用

 更新時(shí)間:2019年12月31日 10:45:13   作者:FANDX  
這篇文章主要介紹了C語(yǔ)言中的指針與數(shù)組的定義與使用,本文給大家介紹的非常詳細(xì),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下

指針的特點(diǎn)

  • 他就是內(nèi)存中的一個(gè)地址
  • 指針本身運(yùn)算
  • 指針?biāo)赶虻膬?nèi)容是可以操作的

操作系統(tǒng)是如何管理內(nèi)存的

??臻g

4M~8m的大小

當(dāng)進(jìn)入函數(shù)的時(shí)候會(huì)進(jìn)行壓棧數(shù)據(jù)

堆空間

  • 4g的大小 1g是操作系統(tǒng)
  • 全局變量

內(nèi)存映射

  • 可以對(duì)內(nèi)存的內(nèi)容修改修改硬盤(pán)的內(nèi)容
  • 一般在數(shù)據(jù)庫(kù)中經(jīng)常使用

內(nèi)存的分配與釋放

c語(yǔ)言分配內(nèi)存的方法

// malloc(需要分配的大小); 這里的分配的大小需要對(duì)齊的2的指數(shù)
void *mem = malloc(size);

釋放內(nèi)存

// 一般分配的內(nèi)容都是在堆空間中的
// 如果使用完不去釋放會(huì)照成內(nèi)存泄漏和野指針的出現(xiàn)
free(men);

什么是內(nèi)存泄漏:

  • 不斷的向系統(tǒng)
  • 申請(qǐng)內(nèi)存申請(qǐng)的內(nèi)存不用,也不去釋放
  • 絕對(duì)不允許內(nèi)存泄漏

什么是野指針

  • 這個(gè)指針已經(jīng)被釋放掉了
  • 別人又創(chuàng)建了這個(gè)指針
  • 過(guò)去的自己又用到了這個(gè)指針

函數(shù)指針

返回值類(lèi)型(*指針變量名)(參數(shù)列表);

int func(int x); // 聲明一個(gè)函數(shù)
int (*f)(int x); // 聲明一個(gè)函數(shù)指針
f = func; // 將func函數(shù)的首地址賦值給指針f
#include <stdio.h>

int sum (int a, int b)
{
 return (a+b);
}

int main(int argc, int *argv[])
{
 // 定義一個(gè)函數(shù)指針 
 int (*f) (int, int);
 // f 指向 sum函數(shù)
 f = sum;
 // 執(zhí)行f函數(shù),相當(dāng)于執(zhí)行sum函數(shù)
 int f_sum = f(2,3);
 printf("f_sum: %d\n", f_sum);
 
 return 0;
}

指針就是內(nèi)存地址: void*、 char*

數(shù)組就是:char c[2]、 int arr[10],指連續(xù)相同類(lèi)型的空間

#include <stdio.h>
#include <stdlib.h>

int main(int argc, char *argv[])
{
 // 定義兩個(gè)int類(lèi)型的指針
 int *a, *b;
 // 通過(guò)malloc在堆里面開(kāi)辟了空間
 a = (int*)malloc(sizeof(int));
 b = (int*)malloc(sizeof(int));
 *a = 1;
 *b = 2;
 // 指針a的地址是&a, a是指向空間的地址,*a是指向空間的值
 printf("addr of a:%p, %p, %d\n", &a, a, *a);
 printf("addr of b:%p, %p, %d\n", &b, b, *b);
 return 0;
}

#include<stdio.h>
#include<stdlib.h>

int main(int argc, char *argv[])
{
 // 創(chuàng)建一個(gè)數(shù)組c里面有3個(gè)數(shù)據(jù),int類(lèi)型的數(shù)組一個(gè)數(shù)組占4個(gè)字節(jié),地址相關(guān)的空間相差是1個(gè)字節(jié)
 int c[3] = {1,2,3};
 printf("c的地址:%p\t%p\tc[0]:%p\tc[1]:%p\tc[2]:%p\t\n",c, &c, &c[0], &c[1], &c[2]);
 printf("%d, %d, %d\n", c[0], c[1], c[2]);
}

總結(jié)

以上所述是小編給大家介紹的C語(yǔ)言中的指針與數(shù)組的定義與使用,希望對(duì)大家有所幫助!

相關(guān)文章

  • C++設(shè)計(jì)模式之適配器模式

    C++設(shè)計(jì)模式之適配器模式

    這篇文章主要介紹了C++設(shè)計(jì)模式之適配器模式,本文詳細(xì)講解了C++中的適配器模式,并給出了實(shí)現(xiàn)代碼,需要的朋友可以參考下
    2014-09-09
  • C++代碼實(shí)現(xiàn)鏈隊(duì)列詳解

    C++代碼實(shí)現(xiàn)鏈隊(duì)列詳解

    下面小編就為大家分享一篇C++代碼實(shí)現(xiàn)鏈隊(duì)列的示例,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧,希望能夠給你帶來(lái)幫助
    2021-09-09
  • C++獲取當(dāng)前系統(tǒng)時(shí)間的方法總結(jié)

    C++獲取當(dāng)前系統(tǒng)時(shí)間的方法總結(jié)

    這篇文章主要介紹了C++獲取當(dāng)前系統(tǒng)時(shí)間的方法,實(shí)例總結(jié)了四個(gè)獲取系統(tǒng)時(shí)間的方法,非常具有實(shí)用價(jià)值,需要的朋友可以參考下
    2015-04-04
  • C++17結(jié)構(gòu)化綁定的實(shí)現(xiàn)

    C++17結(jié)構(gòu)化綁定的實(shí)現(xiàn)

    這篇文章主要介紹了C++17結(jié)構(gòu)化綁定的實(shí)現(xiàn),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2020-05-05
  • C++中臨時(shí)對(duì)象的常見(jiàn)產(chǎn)生情況及其解決的方案

    C++中臨時(shí)對(duì)象的常見(jiàn)產(chǎn)生情況及其解決的方案

    這篇文章主要是探討常見(jiàn)的臨時(shí)對(duì)象產(chǎn)生的情況,及其如何避免和解決這種臨時(shí)對(duì)象產(chǎn)生的方式。具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2021-09-09
  • C++命名空間namespace的介紹與使用

    C++命名空間namespace的介紹與使用

    今天小編就為大家分享一篇關(guān)于C++命名空間namespace的介紹與使用,小編覺(jué)得內(nèi)容挺不錯(cuò)的,現(xiàn)在分享給大家,具有很好的參考價(jià)值,需要的朋友一起跟隨小編來(lái)看看吧
    2018-12-12
  • C語(yǔ)言中const與指針使用方法總結(jié)

    C語(yǔ)言中const與指針使用方法總結(jié)

    這篇文章主要介紹了C語(yǔ)言中const與指針使用方法總結(jié)的相關(guān)資料,需要的朋友可以參考下
    2017-10-10
  • 基于QT制作一個(gè)簡(jiǎn)易的傳輸文件小工具

    基于QT制作一個(gè)簡(jiǎn)易的傳輸文件小工具

    本文主要介紹了通過(guò)QT實(shí)現(xiàn)的一個(gè)文件傳輸小工具。功能就是能實(shí)現(xiàn)文件的雙向傳輸,即客戶(hù)端能傳給服務(wù)端,服務(wù)端可以傳給客戶(hù)端。文中示例代碼具有一定的學(xué)習(xí)價(jià)值,感興趣的小伙伴可以了解一下
    2021-12-12
  • C語(yǔ)言如何實(shí)現(xiàn)頭插法建立單鏈表

    C語(yǔ)言如何實(shí)現(xiàn)頭插法建立單鏈表

    這篇文章主要介紹了C語(yǔ)言實(shí)現(xiàn)頭插法建立單鏈表的方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2022-07-07
  • C語(yǔ)言借助EasyX實(shí)現(xiàn)的生命游戲源碼

    C語(yǔ)言借助EasyX實(shí)現(xiàn)的生命游戲源碼

    這篇文章主要介紹了C語(yǔ)言借助EasyX實(shí)現(xiàn)的生命游戲的方法,需要的朋友可以參考下
    2014-07-07

最新評(píng)論

布拖县| 临猗县| 永年县| 沙坪坝区| 钟祥市| 剑阁县| 潼关县| 民丰县| 庄河市| 上高县| 江油市| 犍为县| 巫溪县| 惠来县| 临潭县| 陕西省| 青神县| 甘德县| 错那县| 祥云县| 玉田县| 澳门| 石门县| 清镇市| 精河县| 六枝特区| 米泉市| 巴东县| 嘉善县| 泊头市| 和硕县| 邵阳县| 肃宁县| 汕尾市| 木里| 三穗县| 宜昌市| 西乌珠穆沁旗| 库尔勒市| 镇雄县| 新安县|