最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

歡迎光臨散文網(wǎng) 會(huì)員登陸 & 注冊(cè)

【C語言】數(shù)組挖的坑,中招的舉個(gè)爪!

2021-09-19 02:30 作者:秋名山西  | 我要投稿

從大學(xué)修過C語言基礎(chǔ)這門課后,每每看到諸如變量、數(shù)組、結(jié)構(gòu)體這些東西時(shí),總覺得自己已經(jīng)掌握了,沒必要重點(diǎn)學(xué)習(xí)。知道今天看到QQ群有位老鐵跑出這么個(gè)問題,如下圖:

這個(gè)程序printf出來為啥是0000?

仔細(xì)瞅了瞅,發(fā)現(xiàn)這個(gè)問題貌似觸及到了我的知識(shí)盲區(qū)。于是跑去查了下資料,這里說一下我的成果:

首先,要區(qū)分兩個(gè)概念,那就是左值與右值。何謂左值,?賦值運(yùn)算符左邊的即為左值,何謂右值,賦值運(yùn)算符右邊的稱為右值。可以表示為:左值 = 右值。左值呢一般為具體的某塊內(nèi)存,右值則是內(nèi)存中存儲(chǔ)的數(shù)據(jù)。

然后回到我們的問題中,在程序中,主函數(shù)將數(shù)組mac的首地址傳給func函數(shù),程序原作者希望調(diào)用func函數(shù),完成將字符串"1234"賦值給數(shù)組mac的前四個(gè)元素的工作。為什么程序最終沒能實(shí)現(xiàn)該目的呢?我認(rèn)為有如下幾個(gè)原因:

1、c語言規(guī)定,對(duì)數(shù)組的操作不能整體進(jìn)行,必須單個(gè)元素操作。

2、數(shù)組的地址是由編譯器編譯時(shí)直接給定的,數(shù)組變量的變量名與此地址直接綁定,也就說數(shù)組mac的首地址是一個(gè)常量,它不能作為左值,即不能對(duì)數(shù)組的地址進(jìn)行變更,強(qiáng)行變更將會(huì)導(dǎo)致變更失敗。

所以這個(gè)程序中,強(qiáng)行將字符串"1234"的首地址賦值給mac的首地址(常量),就導(dǎo)致了最終運(yùn)行結(jié)果的失敗。

【C語言】數(shù)組挖的坑,中招的舉個(gè)爪!的評(píng)論 (共 條)

分享到微博請(qǐng)遵守國家法律
柳林县| 永川市| 杂多县| 松潘县| 文登市| 姚安县| 新干县| 南通市| 绥中县| 临安市| 尖扎县| 同仁县| 甘谷县| 台南市| 永寿县| 阜康市| 固始县| 禹城市| 青州市| 黄浦区| 上林县| 万荣县| 尖扎县| 大丰市| 环江| 灵璧县| 吉首市| 如皋市| 凤冈县| 五原县| 临潭县| 玉树县| 临城县| 云龙县| 绥宁县| 敦化市| 武功县| 宽甸| 昭苏县| 金平| 昌都县|