C語言中指向指標的指標什麼時候用,最好說的詳細一些,舉個例子!請高手解答,先謝謝了

時間 2021-05-04 03:12:35

1樓:匿名使用者

#include

#include

#include

/*當然有必須使用二級指標才能解決的情況,如,某個函式的功能

是返回某個問題的計算結果,但是結果資料是不確定個數的值,所以

在呼叫此函式時不知道事先應分配多少空間來儲存返回的資料,此時

的處理辦法就是傳遞一個沒有分配空間的指標的指標(地址)進去,

讓函式自己根據計算的結果分配足夠的空間來儲存結果,並返回,

呼叫者使用了結果後,由呼叫者負責記憶體的釋放,即,大家可能聽說

過的"誰使用(呼叫)誰釋放"之類的話,如下面的**:*/

//返回不定結果個數的計算函式

//引數int **presult--為儲存返回資料的指標的指標

//引數int &count--為儲存返回的結果個數

}//返回不定結果個數的計算函式(此函式不能返回資料)

//引數int *presult--為儲存返回資料的指標

//引數int &count--為儲存返回的結果個數

}int main(void)

//delete presult;

//presult = null;

//&presult為指標的地址(即指標的指標),第二個引數使用引用傳遞

compute2(&presult,count);

//輸出結果

for ( int i = 0 ; i < count ; i++ )

delete presult;

presult = null;

getchar();

return 0;}

2樓:小八

下面的例子是通過2級指標訪問x的值

比如:main()

3樓:永飛

什麼時候都可以用,那只是一個語法而已

下面有一些關於c語言問題,希望大夥兒侃侃,最好解釋詳細,謝謝呢?

4樓:匿名使用者

第一題:3

這是一道位運算,a&0377等同於011&011111111的運算,這兩個與一下值為011,也就是3

第二題:11

這也是位運算,先把3,10,15化為二進位制,依次為:011,1010,1111.a|b&c先執行b&c得到1010,再跟a或運算(一位一位或)得到1011,也就是11.

第三題: d) h/2*(a+b)

h/2等於1,而代數中等於1.5.這是因為h為整型,h/2後也是整形,0.5捨去.

第四題:20 0

以上格式寫得讓人誤會,我重寫一下,你就會明白.

main() ,固if語句範圍只有第一個;為此

x=y;y=t;

printf("%d,%d\n",x,y);

}第五題:8 4

void f(int y,int*x) x是按地址傳,而y是按值傳,當值傳到函式裡時,*x可以改變x的值,而y不能返回.保持原來的值...

第六題:

這是c語言的記憶體動態分配,不是很掌握,沒有把握,希望其它好心人幫忙一下補齊.

第七題:efgh

這道我簡單說下,語言點太多,要是不明白,發訊息給我,我就這題說詳細.

return s+strlen(s)/2,返回的是一個指標,s指向首元素a,strlen(s)/2=4,固返回的指標指向第五個元素e.主函式中的 printf列印從第五個元素之後的字串.

第八題:6

這是一道遞規呼叫.主函式傳給函式時f()時,a=a[3]首元素是1;返回1+f(&a[1],2);f(&a[1],2)在呼叫函式時a=a[1],但此時首素是2而不是1;返回1+2+f(&a[1],1);最後呼叫函式,a=a[2],首元素為3,也只有一個;返回1+2+3,得到6

第九題:double max,&y

這題不需要解釋吧....還是簡單講一下,第一個空是函式宣告;要與定義的函式相符,第二個空,輸入時要加&,為什麼呢?我們要把輸入的值傳給變數對應的地址,固用地址符&

最後一題:14

位運算;12|012化簡得到:001100|001010=001110,換算成10進製得到14

其中注意,012是八進位制,1對應001,2對應010,一整個001010,因為兩個要等長,固補0;

哇,一口氣做完,真是夠累的...好久沒這麼做了...

呵呵,又來了;

我補充一下第六題,我看一下書,明白了.

p=(double *) malloc(3*sizeof(double));

5樓:

我說老兄,你到底學過程式設計沒有?

c語言中指向陣列元素的指標有一點是指標

hdu我愛c語言 比如說陣列 int a 10 之後你第一個指標 int p p a或者p a 0 這兩個是同一個意思。你這樣操作之後 p a a 0 基本就是同一個意思。 唐麗梅 就是當你定義一個陣列m的時候,然後定義一個變數pm指向它,則這個變數pm一開始的時候指向的是這個陣列m的首地址。無論這...

關於c語言中指標賦值的問題,關於C語言中指標賦值的問題

計算天下 你這樣想說明你還沒有真正理解記憶體和指標。int a 表示編譯器隨機取出一個空閒的地址分配給a,不妨設為00000000,長度為sizeof int 不同編譯器可能不同。int p 也表示隨機取出一個空閒的地址分配給p,不妨設為000000f0,長度一般為4個位元組,則這四個位元組現在儲存...

c語言指標的概念,論述C語言中指標的概念和作用,並舉例說明

指標是c語言中廣泛使用的一種資料型別。運用指標程式設計是c語言最主要的風格之一。利用指標變數可以表示各種資料結構 能很方便地使用陣列和字串 並能象組合語言一樣處理記憶體地址,從而編出精練而高效的程式。指標極大地豐富了c語言的功能。學習指標是學習c語言中最重要的一環,能否正確理解和使用指標是我們是否掌...