int *x =&10;//不能對10取位址 因為他不在 堆疊區
//堆疊常量區的都b可以對變數取位址
10就是乙個字面量 不能取位址
1:指標是一種資料型別
1)指標也是一種變數,占有記憶體空間,用來保持記憶體位址,在一般情況下所有指標、
都是4個位元組;
2)*p操作記憶體
再指標宣告時,*號表示所宣告的變數為指標,
在指標使用時,*號表示操作指標所指向的記憶體空間的值,
*p相當於通過位址找到一塊記憶體,然後操作記憶體
*p放在等號左邊賦值(給記憶體賦值)
*p放在等號的右邊取值(從記憶體獲取值)
3)指標變數和它指向的記憶體塊是兩個不同的概念;
char s='a';
char *p=&s;
*p='b';//此操作對不會改變指標變數的值,但是會改變所指向位址的值
保證指向的記憶體是可修改的
char*p="abcdeff"; //c++編譯器會做兩個操作先給字串分記憶體再給 p 分配4個位元組記憶體
然後把a的位址賦值給 *p 也就是字串的首位址
char *p=null;
strcpy([,"abcde"); //不可以向空記憶體寫資料
4)怎麼理解(多級)指標做函式引數
a.站在c/c++編譯器的角度,如果是指標的形參 編譯器只會分配四個位元組的記憶體
例如: /*
void sed(char *p1);void sed(char* p1)
void send(char**p1);void send(char * * p1);
void send(char ***p1);void send(char *p)
void send(char (*p)[10]);void send(char ******p); *
/
二間接賦值時指標存在最大的意義
1指標變數和他所指向的記憶體空間是兩碼事
int a=10;
a=15; //直接賦值
int *p=null;
*p=20; //*p 放在左邊就是間接修改了a的值 這樣體現出的意義不大
但是如果用在函式傳參那就不一樣了;
int ge(int*p)
int main()
有點事 下次再補充
int *x =&10;//不能對10取位址 因為他不在 堆疊區
//堆疊常量區的都b可以對變數取位址
10就是乙個字面量 不能取位址
1:指標是一種資料型別
1)指標也是一種變數,占有記憶體空間,用來保持記憶體位址,在一般情況下所有指標、
都是4個位元組;
2)*p操作記憶體
再指標宣告時,*號表示所宣告的變數為指標,
在指標使用時,*號表示操作指標所指向的記憶體空間的值,
*p相當於通過位址找到一塊記憶體,然後操作記憶體
*p放在等號左邊賦值(給記憶體賦值)
*p放在等號的右邊取值(從記憶體獲取值)
3)指標變數和它指向的記憶體塊是兩個不同的概念;
char s='a';
char *p=&s;
*p='b';//此操作對不會改變指標變數的值,但是會改變所指向位址的值
保證指向的記憶體是可修改的
char*p="abcdeff"; //c++編譯器會做兩個操作先給字串分記憶體再給 p 分配4個位元組記憶體
然後把a的位址賦值給 *p 也就是字串的首位址
char *p=null;
strcpy([,"abcde"); //不可以向空記憶體寫資料
4)怎麼理解(多級)指標做函式引數
a.站在c/c++編譯器的角度,如果是指標的形參 編譯器只會分配四個位元組的記憶體
例如:/*
void sed(char *p1);void sed(char* p1)
void send(char**p1);void send(char * * p1);
void send(char ***p1);void send(char *p)
void send(char (*p)[10]);void send(char ******p); *
/
二間接賦值時指標存在最大的意義
1指標變數和他所指向的記憶體空間是兩碼事
int a=10;
a=15; //直接賦值
int *p=null;
*p=20; //*p 放在左邊就是間接修改了a的值 這樣體現出的意義不大
但是如果用在函式傳參那就不一樣了;
c c 使用指標需要注意的問題
分配空間 初始化 釋放 二 常見的錯誤有幾種 1 記憶體分配未成功,卻使用了它 程式設計新手常犯這種錯誤,因為他們沒有意識到記憶體分配會不成功。常用解決辦法是,使用記憶體之前檢查指標是否為null。如果指標p是函式的引數,那麼在函式的入口處用assert p null 進行檢查。如果使用malloc...
零基礎學習C C 需要注意的地方
談及c c 功能強大 應用廣泛,一旦掌握了後,若是再自學其他語言就顯得輕而易舉了。那為什麼學c c 的人少呢?很多人認為c c 雖然博大精深,但也難學。其實就本人認為c c 並程式設計客棧非是 difficult 困難 的,只要你能理清思路,掌握它的精髓,配合一套教材。那麼學c c 是一件非常容易且...
java需要注意的地方2
1.abstract class name 大俠們,這有何錯誤?答案 錯。abstract method必須以分號結尾,且不帶花括號。2.public class something 有錯嗎?答案 錯。區域性變數前不能放置任何訪問修飾符 private,public,和protected final...