C部落格作業05 指標

2022-07-08 06:06:08 字數 1118 閱讀 5838

型別名  指標變數名型別說明中可取c語言的有效型別, 表示為指標型變數。如:char  c1,c2; 表示c1與c2是指標變數,其基型別是字元型。注意:指標的基型別與其所指向的變數的型別要統一。

具體格式是什麼,注意事項。

申明:void a(int *p);

使用:a(p);

函式:int a(int *p)

注意事項:

用指標作為函式返回值時需要注意的一點是,函式執行結束後會銷毀在它內部定義的所有區域性資料,包括區域性變數、區域性陣列和形式引數,函式返回的指標請盡量不要指向這些資料

舉例為多個字串做動態記憶體要如何分配。

原因:1.可以申請動態空間,節省記憶體;

2.便於儲存大型物件;

3.傳遞指標可以不改變原來的值;

堆區和棧區區別:

1、棧區(stack)— 由編譯器自動分配釋放

2、堆區(heap) — 一般由程式設計師分配釋放

int a[10][5];

int (p)[5];//每行5個元素的陣列指標。

p=a;//把p指向a。

a(即b的位址)是指向指標的指標,稱為二級指標,用於存放二級指標的變數稱為二級指標變數。

1.7 行指標、列指標

行指標:指的是一整行

列指標:指的是一行中某個具體元素。

可以將列指標理解為行指標的具體元素,行指標理解為列指標的位址。

那麼兩個概念之間的具體轉換是:

*行指標----列指標

&列指標----行指標

a即是它的行指標,a+0表示第0行的位址,a+1表示第1行位址…

或者可以說成&a[0]表示第0行的位址,&a[1]表示第1行的位址…

那麼a[0]+0,a[0]+1…就表示第1行第1列的位址,第1行第2列位址…

a[1]+0,a[1]+1就表示第2行第1列位址,第2行第2列位址…

選擇一題難度較大的題目。請認真寫偽**整理解題思路。自己**和同學**比較,說明各自**特點。

定義乙個二維陣列str1[4][20],輸入詩

定義乙個一維陣列str2[10],存放詩的尾

判斷每一行詩的長度,將最後兩個字元輸入到str2中,下標每次+1

最後在str2的末尾放結束標誌符

輸出str2

C部落格作業05 指標

展示關於 指標題目集 分數截圖。每個知識點具體展開介紹。包括指標如何指向字串 字串相關函式及函式 原型的理解 字串相關函式用法 擴充套件課堂未介紹內容 具體格式是什麼,注意事項。為什麼要動態記憶體分配,堆區和棧區區別。動態記憶體分配相關函式及用法。舉例為多個字串做動態記憶體要如何分配。多個字串用二維...

C部落格作業05 指標

格式 datatype name value 定義格式 int p 定義,定義時必須帶 float p1 a char p2 c p1 b p2 d 賦值,在定義的同時賦值需要帶,單獨賦值時不能帶,因為p代表指標變數的值,即位址。p代表指標指標變數指向的變數的值。乙個函式在編譯時被分派乙個入口位址,...

C部落格作業05 指標

1.指標做迴圈變數做法 基本做法如下 int a 10 int p p a 指標指向a陣列的首位址 fgets a,10,stdin for p a p 0 p n p 2.字元指標如何表示字串 基本做法如下 char str abc char p for p str p 0 p n p 3.動態記...