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這個指標本身在記憶體中存放的位置,這個也是不確...