在c語言中,定義了乙個特殊的資料型別——指標型別。指標型別的變數是專門
用來儲存某個變數的記憶體位址。這樣,我們就可以從指標變數的值取得執行時確切的位址了。
eg: int a; <——4個位元組 2000 2001 2002 2003
int b; <——4個位元組 2004 2005 2006 2007
int a=3;
scanf("%d",&a); 首先將鍵盤所輸入的值送到位址為2000開始的整型儲存單位中。
定義指標的語法:
指向的變數的型別名 * 指標變數名;
eg: int i , j ;
int *pointer1 , *pointer2 ;
pointer1 pointer2都是指向整形變數的指標變數,左邊的int是在定義指標變數時必須指定的基本資料型別, 指標變數的基本資料型別用來指定該指標
變數可以指向的變數型別。【指標型別必須同變數的型別名一樣】
eg: #include
int main(void){
char a[ ]="welcome";
char *pointer;
pointer=a;
printf("%s",pointer);
return 0;
C語言指標型別和型別轉換
指標是強型別,意思是特定型別的指標變數存放特定型別變數的位址,比如int 需要乙個指向整形的指標來存放整形資料的位址,char 需要乙個指向字元型的指標來存放字元型資料的位址,那為什麼說指標是個強型別呢?指標不僅用來表示變數的位址,同時也得使用指標來解引用位址的內容,以此方便修改和使用變數的值。說到...
C語言指標強制型別轉換
一 舉例說明 上圖對應函式呼叫為int printf const char fmt,fmt為char 指標型別,所以共佔了32位位元組,但是 fmt執行的是乙個位元組,fmt 執行的是下乙個位元組,fmt得到乙個32位位址,char fmt得到是乙個執行位元組的指標,char fmt 4後正好執行了...
C語言指標強制型別轉換
概要 c語言中,任何乙個變數都必須占有乙個位址,而這個位址空間內的0 1 就是這個變數的值。不同的資料型別占有的空間大小不一,但是他們都必須有個位址,而這個位址就是硬體訪問的依據,而名字只是提供給程式設計師的一種記住這個位址的方便一點的方法。但是,不同的變數在機器中都是0 1 所以,我們不能簡單的通...