C語言指針知識點
引導語:在信息工程中,指針是一個用來指示一個內存地址的計算機語言的變量或中央處理器(CPU)中的寄存器(Register)。以下是本站小編分享給大家的C語言指針知識點,歡迎閲讀!
【考點1】指針變量
指針變量是用來存儲地址的,而一般變量是存儲數值的。指針變量可指向任意一種數據類型,但不管它指向的數據佔用多少字節,一個指針變量佔用四個字節。
【考點2】指針變量的定義
格式為:類型名 *指針變量名。二維指針int **p;可以理解為基類型為(int *)類型。
【考點3】指針變量的初始化
指針變量在使用前必須要初始化,把一個具體的地址賦給它,否則引用時會有副作用,如果不指向任何數據就賦“空值”NULL。
指針變量兩種初始化
方法一:int a=2,*p=&a;(定義的同時初始化)
方法二:int a=2,*p; (定義之後初始化)
p=&a;
【考點4】指針變量的引用
&是取地址符,*是間接訪問運算符,它們是互逆的兩個運算符。在指針變量名前加間接訪問運算符就等價它所指向的量。
【考點5】指針的運算
int *p 中 *p 和p 的.差別:
*p 可以當做變量來用;*的作用是取後面地址p 裏面的數值
p 是當作地址來使用。
*p++ 和(*p)++的之間的差別:改錯題目中很重要
*p++是地址會變化。
(*p)++ 是數值會要變化。
三名主義:(考試的重點)
數組名:表示第一個元素的地址。數組名不可以自加,他是地址常量名。(考了很多次)
函數名:表示該函數的入口地址。
字符串常量名:表示第一個字符的地址。
指針變量是存放地址的。並且指向哪個就等價哪個,所有出現*p 的地方都可以用它等價的代替指向的變量。
例如:int a=2,*p=&a;
*p=*p+2;
(由於*p 指向變量a,所以指向哪個就等價哪個,這裏*p 等價於a,可以相當於是a=a+2)
-
C語言轉義字符和格式控制符參考
導語:字符型常量所表示的值是字符型變量所能包含的值。我們可以用ASCII表達式來表示一個字符型常量,或者用單引號內加反斜槓表示轉義字符。下面是C語言轉義字符和格式控制符參考,歡迎學習:轉義字符參考:a:蜂鳴,響鈴:回退:向後退一格f:換頁:換行,光標到下行行首:回車,光...
-
C語言scanf函數應用問題解答
C語言的輸入是由系統提供的庫函數完成的。scanf函數是C語言中最常用且功能最強的輸入函數,但該函數如使用不慎,就會出現錯誤或得不到預想的結果。以下結果都是基於VC++6.0運行環境。一、格式説明符和輸入項的三對應(類型、個數、順序)scanf函數格式中的格式説明(“%...
-
2017年計算機二級C語言考點習題
計算機二級考試知識點的掌握對考生來説是比較重要的,下面是本站小編為各位考生整理的2017年計算機二級C語言考點習題,希望你的的考試有所幫助!1.在深度為5的滿二叉樹葉中,葉子結點的個數為()。A.32B.31C.16D.152.軟件生命週期中,花費最多的階段是()。A.詳細設計B....
-
C語言編程中的聯合體union入門學習教程詳解
聯合體(union)在C語言中是一個特殊的數據類型,能夠存儲不同類型的數據在同一個內存位置。可以定義一個聯合體使用許多成員,但只有一個部件可以包含在任何時候給定的值。聯合體會提供使用相同的存儲器位置供多用途的有效方式。定義聯合體要定義聯合體,必須使用unio...