青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品

MyMSDN

MyMSDN記錄開發(fā)新知道

Expert C Programming notes

1、const其實(shí)并不是真正的常量(P32)

const_is_not_constant

2、早期的gets()中的Bug導(dǎo)致了Internet蠕蟲(P42)

gets()函數(shù)并不檢查緩沖區(qū)的空間,事實(shí)上它也無法檢查緩沖區(qū)的空間。如果函數(shù)的調(diào)用者提供了一個(gè)指向堆棧的指針,并且gets()函數(shù)讀入的字符數(shù)量超過緩沖區(qū)的空間,gets()函數(shù)將會(huì)愉快地將多出來的字符繼續(xù)寫入到堆棧中,這就覆蓋了堆棧原先的內(nèi)容。——這就是病毒利用它來寫入額外空間,并引發(fā)蠕蟲病毒的前提。

推薦的方式是將

gets(line)

替換為

if(fgets(line, sizeof(line), stdin) == NULL)

exit(1);

3、相鄰字符串常量自動(dòng)連接(P45)

這個(gè)其實(shí)已經(jīng)應(yīng)用很普遍了,但是我個(gè)人用的比較少,特此記錄一下。

ansi-c_connect_string

4、返回一個(gè)指針?(P48)

這個(gè)話題圍繞一個(gè)程序的BUG來展開,這個(gè)程序返回了局部變量的值的指針,這么說當(dāng)然你一眼就能看得出來問題所在,但是在很多時(shí)候,這個(gè)錯(cuò)誤卻總是在你的眼皮子底下溜走。

作者提供了五種方式,只能說可以用,但唯一推薦的只有一個(gè),詳見作者的分析(P48)(不是什么高深的理論,你自己也能分析地出來)。

a.返回一個(gè)字符串常量的指針。因?yàn)槌A看嬖陟o態(tài)數(shù)據(jù)存儲(chǔ)區(qū),所以指針沒問題。

b.使用全局聲明的數(shù)組。提到全局兩個(gè)字,就知道這個(gè)方法有很大的局限性。

c.使用靜態(tài)數(shù)組。下一次調(diào)用將覆蓋這個(gè)數(shù)組內(nèi)容。

char * func() {

static char buffer[20];

return buffer;

}

d.顯式分配一些內(nèi)存,保存返回的值。

char  * func() {

char * s = malloc(120);

return s;

}

既然用到了malloc,就必然伴隨著free,因此帶來了內(nèi)存管理的問題,增加了開發(fā)者負(fù)擔(dān)。

e.(推薦)在調(diào)用前后,由函數(shù)調(diào)用者分配內(nèi)存,并由其釋放,在同一地方釋放對(duì)于內(nèi)存管理來說代價(jià)相對(duì)最小。

void func( char * result, int size) {

strncpy(result, “That’d be in the data segment, Bob”, size);

}

buffer = malloc(size);

func(buffer, size);

free(buffer);

posted on 2009-04-01 00:31 volnet 閱讀(337) 評(píng)論(0)  編輯 收藏 引用 所屬分類: C/C++

特殊功能
 
青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            欧美福利网址| 欧美国产高清| 久久亚洲图片| 午夜精品久久久久久久久| 99国产精品99久久久久久粉嫩| 性做久久久久久久久| 亚洲男同1069视频| 欧美亚洲一区| 久久人91精品久久久久久不卡 | 亚洲激情欧美| 亚洲人成艺术| 亚洲欧美经典视频| 久久久久在线观看| 欧美1区免费| 亚洲每日更新| 亚洲免费影院| 免费一区视频| 国产精品女人毛片| 黄色日韩网站视频| 日韩视频精品在线观看| 亚洲性图久久| 99v久久综合狠狠综合久久| 欧美紧缚bdsm在线视频| 午夜视频在线观看一区二区三区 | 中文在线不卡| 最近中文字幕日韩精品| 亚洲一区二区三区免费在线观看 | 欧美一区二区三区视频在线| 亚洲丝袜av一区| 欧美www在线| 久久综合激情| 欧美人在线观看| 一个人看的www久久| 狠狠狠色丁香婷婷综合久久五月 | 午夜精品久久久久| 欧美国产日韩xxxxx| 嫩草影视亚洲| 亚洲精品久久久久久久久久久久| 久久久国产精品一区二区三区| 一区二区久久| 国产日韩欧美高清| 午夜在线一区二区| 久久aⅴ国产紧身牛仔裤| 亚洲男同1069视频| 国产婷婷一区二区| 欧美日韩国产小视频| 久久久久国内| 欧美日韩精品免费在线观看视频| 欧美不卡一卡二卡免费版| 猛干欧美女孩| 欧美国产综合一区二区| 久久国产精品高清| 欧美日韩伦理在线| 国产亚洲激情在线| 亚洲欧美国产日韩中文字幕| 欧美韩国日本综合| 欧美一区二区在线看| 国产欧美日韩综合一区在线播放| 日韩视频免费观看高清在线视频 | 一区二区三区免费网站| 99精品视频免费| 欧美精品videossex性护士| 亚洲高清精品中出| 亚洲午夜免费视频| 亚洲第一精品久久忘忧草社区| 亚洲欧洲日产国产综合网| 麻豆精品视频在线| 欧美激情亚洲激情| 在线视频你懂得一区| 久久精品男女| 亚洲欧美一区二区激情| 国产精品视频网站| 久久成人免费| 久久精品麻豆| 精品51国产黑色丝袜高跟鞋| 久热精品在线| 欧美多人爱爱视频网站| 亚洲欧洲一区二区在线播放| 亚洲第一免费播放区| 欧美精品午夜视频| 亚洲一区欧美一区| 销魂美女一区二区三区视频在线| 国产日韩欧美三级| 麻豆精品视频| 欧美啪啪一区| 午夜精品久久一牛影视| 久久久99国产精品免费| 最新亚洲电影| 亚洲最新合集| 黄色成人av网| 日韩午夜av在线| 国产日韩精品视频一区| 欧美69wwwcom| 欧美视频日韩| 美女视频一区免费观看| 欧美日韩成人一区| 久久久7777| 国产精品久久久久国产精品日日| 在线视频亚洲| 欧美在现视频| 一区二区欧美日韩| 久久久久se| 欧美日本不卡视频| 欧美在线视频全部完| 免费不卡在线观看av| 亚洲在线电影| 久久综合色婷婷| 西瓜成人精品人成网站| 免费成人在线视频网站| 欧美在线亚洲一区| 欧美 日韩 国产 一区| 欧美一区二区在线视频| 欧美成人精品在线视频| 久久久噜噜噜久久久| 欧美日韩在线直播| 免费观看在线综合色| 国产精品白丝av嫩草影院| 欧美电影在线播放| 国产精品三上| 一区二区精品在线| 在线观看精品一区| 欧美一级在线播放| 亚洲一区黄色| 欧美精品在线免费观看| 欧美成人情趣视频| 国产在线成人| 欧美一级黄色网| av成人动漫| 欧美高清在线一区二区| 欧美不卡在线视频| 1024精品一区二区三区| 久久精品免费电影| 久久精品免费观看| 国产性天天综合网| 亚洲欧美日韩精品久久奇米色影视 | 欧美激情一区二区三区在线视频 | 亚洲一区日韩在线| 欧美日韩精品不卡| 亚洲精品久久久久中文字幕欢迎你| 国产裸体写真av一区二区| 日韩午夜激情av| 亚洲深夜福利在线| 欧美丝袜第一区| 亚洲手机在线| 久久久欧美一区二区| 激情一区二区| 免费成人在线观看视频| 亚洲美女视频在线观看| 亚洲天天影视| 国产精品视频自拍| 欧美在线看片a免费观看| 老司机一区二区三区| 亚洲成色999久久网站| 老司机免费视频一区二区| 亚洲国产成人精品女人久久久| 91久久精品www人人做人人爽| 欧美顶级艳妇交换群宴| 亚洲精选视频在线| 性欧美大战久久久久久久久| 国产精品网站一区| 久久精视频免费在线久久完整在线看 | 亚洲一区二区网站| 一本色道久久综合狠狠躁篇的优点| 亚洲美女免费精品视频在线观看| 欧美噜噜久久久xxx| 亚洲网站在线播放| 久久精品国产亚洲一区二区三区| 精品成人久久| 欧美久久久久久久| 亚洲欧美亚洲| 亚洲国产成人精品久久久国产成人一区 | 亚洲精选视频在线| 欧美在线啊v一区| 亚洲高清资源综合久久精品| 欧美激情乱人伦| 亚洲欧美日韩在线高清直播| 另类av一区二区| 亚洲天堂网站在线观看视频| 黄网动漫久久久| 欧美午夜在线观看| 久久免费视频网站| 亚洲午夜在线观看| 亚洲缚视频在线观看| 午夜在线观看欧美| 亚洲精品在线观看免费| 国产精品日日做人人爱| 欧美激情一区二区三区高清视频| 亚洲欧美怡红院| 日韩视频免费| 蜜桃av一区二区| 小黄鸭精品aⅴ导航网站入口| 亚洲激情视频在线播放| 国产色视频一区| 欧美偷拍另类| 欧美69wwwcom| 久久精品理论片| 亚洲一区二区精品| 日韩小视频在线观看专区| 欧美激情一区二区三区全黄| 久久精品亚洲热|