#include
void
interchange2
(int
,int);
void
interchange1
(int
* u,
int* v)
;int
main
(void
)void
interchange1
(int
* u,
int* v)
void
interchange2
(int u,
int v)
函式1只是在形參交換資料,資料2可以對主函式中的實參值進行交換
/** sum.c 求陣列中元素之和 */
#include
#define size 10
intsum
(int
* start,
int* end)
;int
main
(void);
long answer;
answer =
sum(marbles, marbles + size)
;//陣列表示,開始和結束
printf
("****** %ld ********"
, answer)
;return0;
}int
sum(
int* start,
int* end)
return total;
}
1)sum(int marbles, int)//第乙個是位址,第二個元素個數
2)sum(int * start, int * end) //第乙個是start陣列首位址元素,第二個是結束位址
int * pt; // 未初始化的指標
*pt = 5; // 嚴重錯誤
系統建立乙個指標時候只分配了儲存指標本身的記憶體,未分配儲存資料記憶體
指標常量就是指標不可變,而指向內容卻可以改變(必須初始化)int * const p;
常量指標就是指標可變,但指向常量不可改變(不必初始化)int const * p, const int * p;
int (* ptr) [3]:表示ptr是乙個指向陣列的指標,陣列的每個元素含有3個陣列元素,也就是3代表陣列的列
int(*ptr) [n],n代表的是陣列的列。編譯器要知道指標指向的陣列元素包含多少元素,也就是n
void sum(int (*pt)[n]);
等價於:
void sum(int pt[n]); 代表pt是乙個指標
void sum(int pt[3][n]);有效,但3將被忽略
int ref = ;
int * pt;
ref + 1// 合法
ref++// 不合法,因為ref值是常量
C語言基礎學習 9 指標
指標全稱是指標變數,其實質是c語言的一種變數。這種變數比較特殊,通常它的值會被 賦值為某個變數的位址值 p a 然後我們可以使用 p這樣的方式去間接訪問p所 指向的那個變數。指標存在的目的就是間接訪問。有了指標之後,我們訪問變數a不必只通過a這個變數名來 訪問。而可以通過p a p 這樣的方式來間接...
C語言基礎四 指標
指標表示乙個位址,什麼型別的指標就應該指向什麼型別的記憶體空間,例如int 型別的指標就應該指向乙個int型別的空間。int a 7 int p null 指標的定義 p a 指標的繫結 p 5 指標的解引用對於同型別指標p1,p2,一般有這幾種運算 p1 3,p1 3,p2 p1 int a 5 ...
C語言基礎(9) 指標
指標與陣列 指標變數定義的一般形式 型別 指標變數名符號 在變數宣告語句中是指標型別說明符,前面的型別用於宣告指標可以指向哪種型別的變數,稱為指標的基型別。例如 int pt1 int pt2 int a 520 int pt a 用 運算子可以獲取指標變數所指向變數的內容,該運算子被稱為指標變數間...