c指標的問題

2022-11-14 04:05:22 字數 704 閱讀 5790

1樓:匿名使用者

首先,在指標定義時規定了ip是一個指向整形的指標,但是int* ip=3; 這句話讓ip指向3號地址塊,但是3號地址塊裡的內容是不確定的,所以是錯誤的

2樓:匿名使用者

int* ip=3;

是不是這一步驟有問題?

指標初始化不能這樣幹!

3樓:醫生一時

#include

void main()

這就對了。這時候ip指向a,而原先ip是指向3,而3是沒有地址的。 所以原先的是錯誤的

4樓:我是程式設計大蝦

int* ip=3;

ip在這裡被定義成一個指標變數,然後給這個指標變數賦值為3。

你的本意不是這樣的,你應該這樣寫:

int* ip;

*ip=3;

這樣就可以達到你的目的了。

5樓:

指標變數只能用來存放地址,而不是變數,如果你真的想讓 3 的地址存放在ip中的話,你只能通過地址運算子來賦值就是&這個來達到目的,同時也可以通過 先定義一個變數然後 即 int a,*ip;然後呢用*ip=&a;這個語句來達到目的.

6樓:匿名使用者

應該這樣寫

#include

void main()

c語言指標問題

因為我的數字很大,用指標的話效率高。這句話不對啊,數字大小和運算時間沒有必然聯絡,比如100乘以101和1000乘以1001的運算時間是一樣的。另外,現代的編譯器優化能力非常強,不必什麼都得自己去優化。你的 就是一個例子。void main int pa 3 a for int k 0 k 2 k ...

問c語言指標問題,問一個c語言指標問題

不行,首先你要有一個陣列存放字母,然後這個二維陣列,行中表示下一個元素應該是a i j,你這樣寫的話就是跳到了下一行了,二不是下一個字母了,你需要知道指標只能指向已存在的物件。如果物件本身並不存在,那麼是無法指向的。你舉的例子裡,沒有說明 b 在哪個位置,從何指出b的地址呢。你要是想用p指向a的地址...

C 裡指標變數自身值的問題,關於c 中指標變數的問題

pt 1244996 是pt的地址 p 後 p p 優先順序高,因此 地址變為了 1245000 注意整形指標 1,其實就是 4,因為整形的size是4位元組 p 1245064 是地址1245000 對應的記憶體值,是不確定的 p 1244992 是p這個指標本身在記憶體中存放的位置,這個也是不確...