Impossible is nothing
愛(ài)過(guò)知情重醉過(guò)知酒濃 花開(kāi)花謝終是空 緣份不停留像春風(fēng)來(lái)又走 女人如花花似夢(mèng)
公告
日歷
<
2025年8月
>
日
一
二
三
四
五
六
27
28
29
30
31
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
1
2
3
4
5
6
統(tǒng)計(jì)
隨筆 - 8
文章 - 91
評(píng)論 - 16
引用 - 0
導(dǎo)航
C++博客
首頁(yè)
發(fā)新隨筆
發(fā)新文章
聯(lián)系
聚合
管理
常用鏈接
我的隨筆
我的評(píng)論
我參與的隨筆
留言簿
(4)
給我留言
查看公開(kāi)留言
查看私人留言
隨筆分類
(4)
STL/BOOST(4)
(rss)
隨筆檔案
(8)
2006年6月 (2)
2006年4月 (4)
2006年3月 (1)
2006年2月 (1)
文章分類
(77)
C++語(yǔ)言(57)
(rss)
GDI/GDI+(1)
(rss)
Windows/MFC(3)
(rss)
編譯器(4)
(rss)
軟件工程(11)
(rss)
圖像處理(1)
(rss)
文章檔案
(91)
2006年7月 (4)
2006年6月 (12)
2006年5月 (3)
2006年4月 (4)
2006年3月 (27)
2006年2月 (41)
相冊(cè)
文章用圖
搜索
最新評(píng)論
1.?re: STL學(xué)習(xí)筆記[未登錄](méi)
很詳細(xì),贊
--bneliao
2.?re: 深度探索c++的對(duì)象模型
筆記很詳細(xì),贊
--bneliao
3.?re: 近日復(fù)習(xí)記錄
不錯(cuò)嘛!
--秦歌
4.?re: 區(qū)域填充算法
頂頂頂頂頂頂頂頂
頂頂頂頂頂頂頂頂頂頂頂頂頂頂頂頂頂頂頂頂
頂頂頂頂
頂頂頂頂
頂頂頂頂頂頂頂頂頂頂頂頂頂頂頂頂頂頂頂頂頂頂頂頂
頂頂頂頂
--lishali
5.?re: Singleton模式的演化[未登錄](méi)
評(píng)論內(nèi)容較長(zhǎng),點(diǎn)擊標(biāo)題查看
--galaxy
閱讀排行榜
1.?從輸入流中讀入一行(2280)
2.?sap的幾道筆試題目(轉(zhuǎn))(1506)
3.?工作中發(fā)現(xiàn)的(1343)
4.?什么是調(diào)色板?(1019)
5.?Stay Hungry, Stay Foolish" (846)
6.?繼續(xù)貼面試題目(741)
7.?近日復(fù)習(xí)記錄(677)
8.?要讀的書(shū)(560)
評(píng)論排行榜
1.?工作中發(fā)現(xiàn)的(3)
2.?sap的幾道筆試題目(轉(zhuǎn))(2)
3.?繼續(xù)貼面試題目(1)
4.?從輸入流中讀入一行(1)
5.?Stay Hungry, Stay Foolish" (1)
一個(gè)關(guān)于指針的問(wèn)題
一個(gè)關(guān)于指針的問(wèn)題
有些東西在你沒(méi)有遇到之前還真是不知道自己沒(méi)有弄清楚,也許是我平時(shí)細(xì)節(jié)的地方注意少了,看來(lái)以后要多加注意了。
char
*
pStr;
char
ch;
char
str[]
=
"
Hello
"
;
ch
=
str[
1
];
*
pStr
=
str[
1
];
printf(
"
ch = %c\n
"
, ch);
printf(
"
*pStr = %c
"
,
*
pStr);
此時(shí)打印ch值的時(shí)候能正確輸出,但是打印pStr[0]的時(shí)候就出問(wèn)題了,跟蹤發(fā)現(xiàn)是pStr[0] = str[1];這句出現(xiàn)問(wèn)題。
原 來(lái),char *pStr; 只定義了一個(gè)4字節(jié)的指針變量,而這個(gè)變量里面的內(nèi)容是將要指向一個(gè)char類型變量的,但是此時(shí)pStr只是個(gè)“野指針”,并沒(méi)有指向一個(gè)char類型 的內(nèi)存單元,所以,當(dāng)用*pStr來(lái)訪問(wèn)這個(gè)元素時(shí),系統(tǒng)根本不知道該訪問(wèn)何處的空間,因此,在使用pStr前,必須讓它指向一個(gè)具體的空間。
由上面可以將相關(guān)語(yǔ)句改為
char
*
pStr;
char
ch;
char
str[]
=
"
Hello
"
;
pStr
=
&
ch;
//
pStr指向ch、獲得初始化
pStr
=
&
str[
1
];
//
pStr指向str[1]地址、獲得初始化
ch
=
str[
1
];
*
pStr
=
str[
1
];
printf(
"
ch = %c\n
"
, ch);
printf(
"
*pStr = %c
"
,
*
pStr);
也就是說(shuō),要先給指針一個(gè)地址值初始化它,然后才能用*訪問(wèn)它指向的內(nèi)容。
◎另外,
在子函數(shù)中使用malloc()/new()分配的內(nèi)存空間不會(huì)因子函數(shù)的返回而消失
,函數(shù)只會(huì)清理調(diào)子函數(shù)里定義的變量的空間,如:
char
*
func()
{
char
*
p;
p
=
(
char
*
)malloc(
sizeof
(
char
));
return
p;
}
//
返回后,p所在空間被釋放,但是p所指空間還存在
所以,可以用p1=func();來(lái)獲得在func()中分配的空間。
此中方法可以用來(lái)解決“指針的指針”使用不方便的問(wèn)題。步驟分2步:1、把傳入的指針的指針參數(shù)去掉;2、把函數(shù)的返回值賦給要改變的對(duì)象的指針:
void
GetMemory2(
char
**
p,
int
num)
{
*
p
=
(
char
*
)malloc(
sizeof
(
char
)
*
num);
}
void
Test2(
void
)
{
char
*
str
=
NULL;
GetMemory2(
&
str,
100
);
//
注意參數(shù)是 &str,而不是str
strcpy(str,
"
hello
"
);
cout
<<
str
<<
endl;
free(str);
}
/**/
//////
下面是用傳遞動(dòng)態(tài)內(nèi)存的方法實(shí)現(xiàn)
char
*
GetMemory3(
int
num)
{
char
*
p
=
(
char
*
)malloc(
sizeof
(
char
)
*
num);
return
p;
}
void
Test3(
void
)
{
char
*
str
=
NULL;
str
=
GetMemory3(
100
);
strcpy(str,
"
hello
"
);
cout
<<
str
<<
endl;
free(str);
}
因 為此時(shí)用malloc/new分配的內(nèi)存空間是堆里面的,函數(shù)返回時(shí)不會(huì)回收;而如果在子函數(shù)中用char p[]="asdfgewq";則p是在棧中定義的(先分配p的空間,然后講字符串拷貝進(jìn)去,跟char *p="asdfasdf"分配在全局靜態(tài)內(nèi)存中不一樣),所以會(huì)被系統(tǒng)收回。
posted on 2006-03-08 23:16
笑笑生
閱讀(241)
評(píng)論(0)
編輯
收藏
引用
所屬分類:
C++語(yǔ)言
只有注冊(cè)用戶
登錄
后才能發(fā)表評(píng)論。
【推薦】100%開(kāi)源!大型工業(yè)跨平臺(tái)軟件C++源碼提供,建模,組態(tài)!
相關(guān)文章:
Effective C++
Essential C++讀書(shū)筆記
深度探索c++的對(duì)象模型
理解復(fù)雜聲明
一個(gè)模板巧妙技術(shù),語(yǔ)法技巧
一個(gè)復(fù)雜的boost.lambda表達(dá)式的例子
C++ 編程思想學(xué)習(xí)筆記-命名控制
2005年華為招聘--C語(yǔ)言筆試試題
dynamic_cast詳解
vc++7.1轉(zhuǎn)移到vc++2005 需要的一些變動(dòng)
網(wǎng)站導(dǎo)航:
博客園
IT新聞
BlogJava
博問(wèn)
Chat2DB
管理
Copyright © 笑笑生
Powered by:
博客園
模板提供:
滬江博客
久久99久久无码毛片一区二区
|
久久青青色综合
|
伊人久久精品线影院
|
日韩精品无码久久一区二区三
|
久久成人国产精品免费软件
|
一本伊大人香蕉久久网手机
|
国产毛片欧美毛片久久久
|
国产亚洲美女精品久久久久狼
|
亚洲国产成人精品女人久久久
|
中文国产成人精品久久不卡
|
精品熟女少妇AV免费久久
|
青青草原综合久久
|
五月丁香综合激情六月久久
|
久久亚洲天堂
|
大美女久久久久久j久久
|
色偷偷88888欧美精品久久久
|
久久久精品久久久久特色影视
|
久久精品国产亚洲AV无码娇色
|
日本国产精品久久
|
久久91这里精品国产2020
|
欧美亚洲国产精品久久蜜芽
|
久久久精品人妻一区二区三区四
|
99久久人妻无码精品系列
|
香蕉久久影院
|
亚洲人成无码www久久久
|
久久国产精品国产自线拍免费
|
一本色道久久88精品综合
|
A级毛片无码久久精品免费
|
午夜福利91久久福利
|
久久久久女教师免费一区
|
成人久久久观看免费毛片
|
久久精品国产亚洲精品
|
99久久国产亚洲高清观看2024
|
久久精品国产亚洲AV麻豆网站
|
亚洲国产欧洲综合997久久
|
色综合久久无码中文字幕
|
亚洲综合精品香蕉久久网
|
看久久久久久a级毛片
|
狠狠色丁香久久婷婷综合五月
|
久久精品国产亚洲欧美
|
香蕉久久一区二区不卡无毒影院
|