c語言指標符號問題,C語言指標符號問題?

2021-03-12 05:24:12 字數 2339 閱讀 3804

1樓:匿名使用者

當你想儲存一個地抄址的時候不加 *:

int a = 0;

p = &a;

當你想取指標裡的值

的時候加 * :

int b;

b = *p; ==> b = *(&a) ==> b = 0; // 就是說把a地址儲存的值取出來。

當*p的值還是指標的時候:

int *p = null;

int *q = null;

int a = 0,b =1 ;

q = &a;

p = &q;

*p= &a; // 結果就是q 指向a , p指向q; (*(*p)) 等於 0;

p= &a; // 結果就是p指向a; q 也指向a; p

2樓:十分不強力

指標變數和普通變數沒有什麼區別,指標32位四位元組,裡面儲存的是一個內版存空間權的地址,就像一個整形變數int a, a就可以代表一個整數,一個指標變數int* p,p就可以代表一個地址資料,而*地址,代表去這個地址指向的記憶體空間取出裡面的內容,因此如果是要取出這個指標所指向的記憶體裡面的內容就是*p,而如果是需要獲得那個記憶體的地址,或者讓另外一個指標指向這個空間時,就可以使用int* pb;pb=p;

&變數名這是獲取儲存這個變數的記憶體空間地址應該說c語言是門十分靈活的語言,型別幾乎可以說無所謂了,有的只有記憶體和讀取的方式,什麼幾級指標,都沒有意義,就算是一整形,只要強轉,也可以當作地址資料來用,只是可能會段錯誤,因為沒有做地址對映

有的時候確實不太好理解,不過這個隨著時間的積累,慢慢會理解的

3樓:森林工會會長

定義指標變數的一般形式為:

基型別 *指標變數名;

下面都是合法的定義:

版float *pointer_1; //pointer_1是指向float型變

權量的指標變數

char *pointer_2; //pointer_2是指向字元型變數的指標變數

可以用賦值語句使一個指標變數得到另一個變數的地址,從而使它指向一個該變數。

如:pointer_1=&i;

pointer_2=&j;

在定義指標變數時要注意兩點:

(1)指標變數前面的「*」,表示該變數的型別為指標型變數。

例: float *pointer_3;

指標變數名是pointer_3 ,而不是* pointer_3 。

(2)在定義指標變數時必須指定基型別。

需要特別注意的是,只有整型變數的地址才能放到指向整型變數的指標變數中。

下面的賦值是錯誤的∶

float a;

int * pointer_1;

pointer_1=&a;/* 將float型變數的地址放到指向整型變數的指標變數中,錯誤 */

請牢記,指標變數中只能存放地址(指標),不要將一個整數(或任何其他非地址型別的資料)賦給一個指標變數。

這樣你明白了嗎?不明白再追吧!!!

4樓:匿名使用者

我就給你說點簡單的。當你定義一個變數時如果加了「 * 」,那麼就是定義的一個指回針變數。

比如答 int *a,就是定義了一個整型的指標。而在下面程式呼叫的時候直接用 b=2,a=&b這樣的等式來呼叫表示把b的地址賦給a,而呼叫的時候用*a的話就是讀取存在a裡面的地址上的值,這裡的a裡存的是b的地址,所以*a的值是2。這樣說不知道你明白沒有。

5樓:匿名使用者

定義指標變數的時候int a;int *p=&a,意思就是&p裡面裝的是p,p是a的地址,所以p是指向int型的指標。

用的時候p就是相當於是一個地址,假如int b那麼p=&b,p就變成了b的地址。

6樓:向日與周

樓主你可以再vc環境下除錯啊,一步一步除錯,就會明白了,我就是這麼過來的。

7樓:歷史的文風

30分鐘徹底學會c語言指標

8樓:匿名使用者

不加表示的是p本身的值,即p指向的物件的地址,主要要知道是地址,舉個例子,定義

專一個陣列屬a[5] int *p,p=a(p指向陣列的第一個元素a[0],即*p=a[0]);那麼當p=p+1,p自身加了一後,那麼此時p就指向下一個元素,即a[1],此時*p=a[1]。總之,記住p記錄陣列元素的地址,而*p就等同陣列值。

9樓:淺唱い悲歡

*是一個符號,這是c語言的個固定的語法,你只能這樣做,不然會對你以後的學習造成很大的影響~多寫寫,慢慢就習慣了~

10樓:匿名使用者

多寫些程式,慢慢理解它的意思就ok了

c語言指標習題,C語言指標習題

main 答案是 afgd while i 最後列印出str的地址 字母 s str地址沒有變過。char p1,p2,str 50 abcdefg p1 abcd 將 abcd 首地址賦值給p1,也就是將p1指向字串 abcd p2 efgh 將 efgh 首地址賦值給p2,也就是將p2指向字串 ...

c語言指標問題初學者,C語言指標問題(初學者)

1.概念問題 指標是指存放地址值的變數或常量 指標與一般變數或常量的區別,在於它不直接儲存數值,而是存放被儲存數值的地址,屬於間接存放,所以不少初學者感覺學習困難。比如表示將指標ptr指向變數a,存放a的地址,假設是2000h,而指標變數ptr本身也要有地址,假設是3000h,明顯 ptr和 ptr...

C語言指標

因為兩個程式中都用 scanf d p 語句給p賦值了,所以執行結果一樣。第二個程式即使沒有scanf d p 這個程式也能執行。因為定義指標變數以後,程式會在資料區給這個變數分配一段記憶體用以儲存將來要存放的指標,但在該指標未被指定具體物件之前 即指標初始化之前 該段記憶體中所儲存的資料是隨機的 ...