Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

關於c/c++指標的問題?大家想一想..

0 views
Skip to first unread message

日積月累之功

unread,
Dec 16, 1999, 3:00:00 AM12/16/99
to

先聲明一點...這不是作業...

這一題是出自C++ Primer
的習題2.4


int *pi=new int(10);
int *pia=new int [10];

while(*pi<10) {
pia[*pi]=*pi;
*pi=*pi+1;
}
delete pi;
delete [] pia;

請問這裡有甚麼錯呢?有沒有人說一下ㄚ?

--
※ Origin: 楓橋驛站<bbs.cs.nthu.edu.tw> ◆ From: LA14PA3-127.D21-232.ncu.edu.tw

影子

unread,
Dec 16, 1999, 3:00:00 AM12/16/99
to
※ 引述《sisis...@bbs.cs.nthu.edu.tw (日積月累之功)》之銘言:
: 先聲明一點...這不是作業...

: 這一題是出自C++ Primer
: 的習題2.4
: int *pi=new int(10);
: int *pia=new int [10];
: while(*pi<10) {
: pia[*pi]=*pi;
: *pi=*pi+1;
: }
: delete pi;
: delete [] pia;
: 請問這裡有甚麼錯呢?有沒有人說一下ㄚ?


pi 應該是指向一個值為 10 的 integer 變數呢

所以 while 裡面應該不會被執行到才對

--
※ Origin: 程式設計樂園 ◆ From: ntucsa.csie.ntu.edu.tw

不用功的小孩子...該打

unread,
Dec 16, 1999, 3:00:00 AM12/16/99
to

※ 引述《sisisi (日積月累之功)》之銘言:

> 先聲明一點...這不是作業...
> 這一題是出自C++ Primer
> 的習題2.4
> int *pi=new int(10);
> int *pia=new int [10];
> while(*pi<10) {
> pia[*pi]=*pi;
> *pi=*pi+1;
> }
> delete pi;
> delete [] pia;
> 請問這裡有甚麼錯呢?有沒有人說一下ㄚ?

while 迴圈永遠不會進入啊
我想錯是錯在這裡吧
--
※ Origin: 楓橋驛站<bbs.cs.nthu.edu.tw> ◆ From: g873811.HUNG.ab.nthu.edu.tw

日積月累之功

unread,
Dec 16, 1999, 3:00:00 AM12/16/99
to
※ 引述《sisisi (日積月累之功)》之銘言:
> 先聲明一點...這不是作業...
> 這一題是出自C++ Primer
> 的習題2.4
> int *pi=new int(10);
> int *pia=new int [10];
> while(*pi<10) {
> pia[*pi]=*pi;
> *pi=*pi+1;
> }
> delete pi;
> delete [] pia;
> 請問這裡有甚麼錯呢?有沒有人說一下ㄚ?


請問一下是不是因為*pi是動態配置的
所以compiler沒發生錯誤...


--
※ Origin: 楓橋驛站<bbs.cs.nthu.edu.tw> ◆ From: LA14PA3-127.D21-232.ncu.edu.tw

0 new messages