日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

c语言学指针变量,C语言指针变量学习五

發(fā)布時(shí)間:2024/9/19 编程问答 37 豆豆
生活随笔 收集整理的這篇文章主要介紹了 c语言学指针变量,C语言指针变量学习五 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

//下面的程序演示了指針沒有被人為手動分配存儲空間的錯(cuò)誤

#include

int main()

{

int * p;

int i = 5;

*p = i;

printf("*p=%d\n", *p);

return 0;

}

指針變量一開始沒有在程序中控制去分配內(nèi)存單元,會導(dǎo)致,編譯器自動分配一個(gè)臨時(shí)的內(nèi)存單元給p,

這個(gè)內(nèi)存單元是不被控制的,當(dāng)執(zhí)行到*p = i;的時(shí)候,這個(gè)臨時(shí)的內(nèi)存單元中的值被改成了5,這是有很大

風(fēng)險(xiǎn)的,這個(gè)零時(shí)的內(nèi)存單元中的值有可能是另外一個(gè)很重要的程序要使用,結(jié)果讓你給改了,你還不知道

你改了什么地方的值。

VC6.0下編譯這個(gè)程序會有警告,執(zhí)行后會卡死。現(xiàn)在明白了吧,自己寫的程序似乎編譯沒問題,但運(yùn)行卡死了,

大多數(shù)情況下,這個(gè)C程序可能寫的的很大問題。

編譯器自動分配給變量的零時(shí)值稱之為垃圾值,如果給一個(gè)指針變量一個(gè)垃圾值,不再給指針變量重新賦予新地址,

很可能就變成, 胡亂的指向不受控制的內(nèi)存單元,不受控制改掉了內(nèi)存單元中的值,寫程序的人還沒察覺到,

這是極其危險(xiǎn)的。

//下面的程序演示了*q相當(dāng)與整型變量,而p是整型指針變量,整型指針變量賦給整型變量

#include

int main()

{

int i = 5;

int * p;

int * q;

p = &i;

*q = p;

printf("*q=%d\n", *q);

return 0;

}編譯時(shí)后程序會報(bào)錯(cuò)covert? from int * to int

總結(jié)

以上是生活随笔為你收集整理的c语言学指针变量,C语言指针变量学习五的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。