1樓:潘正啊狗
在c中記憶體,可以劃分為三種,堆、棧和靜態儲存區。棧就是auto變數存放區域,自動釋放,在編譯時候需要知道空間大小。堆一般用作開闢動態儲存區,需要人工開闢,人工釋放,可以在執行是開闢。
比如說c中的malloc和free函式,還有c++中的new和delete。還有就是靜態儲存區,這個區域存放一些常量,不能改變值。你說的char*pp=welcomttoc;*pp=ppischanged;這句話本身是錯的,首先字串不能那樣賦值。
pp指向一個字元,而不是整個一行。就算換成*pp='p'也是不對的,因為char*pp=welcomttoc;意思是在靜態儲存區放入welcomttoc,然後在棧內開闢一個指標pp,指向這個字串。也就是說pp在棧中,而其指向的字串在靜態儲存區中。
所以能改變pp指向,但是不能改變其指向的值。你想把c/c++學明白了,一定要讓記憶體在你心中透明。
2樓:項豫飛令婧
可以。int
a=1;
int*p=&a;
*p=3;
cout<<*p<<"
"<
這裡a和*p都為3; intb=2; p=&b; cout<<*p<<" "<
這裡改了p的地址,但a的值仍不變。 所以改物件的值只能修改指標所指物件的值,而不能通過修改指標的地址來改變一個物件的值 c++ 中關於指標操作,修改指標變數的值和修改指標所指物件的值,他們的區別在哪? 3樓:小劍子 int *p; //定義指標變數p int a=1,b=2; p=&a; //指標變數p指向a,p的值為a的地址p=&b; //修改指標變數p的值,p的值為b的地址*p=3; //修改指標變數p所指向的物件的值,b=3 4樓:匿名使用者 一個只是修改指標的指向,一個是修改指標指向物件的值,這樣說,你滴明白? 如下bai arr 通過方zhi法 data 為arr賦值daodata arr 輸出回陣列 print arr 執行結果 答 直接學抄c語言好了。每種語言都 襲有自己的特點。phthon語言bai以簡單實用作為流du行的源泉。zhi多靠相對的庫外掛dao才能實現更復雜的應用。會phthon語言,再... 一般情況下是可以改的,但你們工程師說不能改,那可能是因為產品結構的問題。這個就不好說了,比方說圓孔周圍有別的衝孔或成型,改後刀口太薄,這個要看實際情況了,如果你把產品及模具的圖發上來看看,那才能確認是確實不能改還是他們忽悠你 你用的是衝床 共有衝頭 衝孔模 落料模 如果你要改變孔徑,你要改變上面三個... 需要知道一些常識,一個類所有的函式都是再code 區中唯一的存放一份。而資料成員則是每個物件儲存一份,並按照宣告順序依次存放。類a中有了虛擬函式就會再類的資料成員的最前面新增一個vfptr指標 void vfptr 這個指標用來指向一個vtable表 一個函式指標陣列 一個類只有一個該表 該表儲存著...Python中陣列有類似C中指標嗎?可以把一串資料賦值給陣列從陣列開始賦值
通過修改模具來擴大孔徑,為什麼無法實現
C 基類指標指向派生類指標時,指標可以用派生類的非虛方法嗎