字符串可以直接賦值給指針嗎 (C語言)地址為什么要變成指針才能賦值給指針變量呢?
(C語言)地址為什么要變成指針才能賦值給指針變量呢?指針就是地址。所以你的問題不對。我的理解是,我想問為什么變量需要取地址,然后給指針變量賦值,即int a,*P P=&a讓我們來談?wù)勔粋€小概念,數(shù)字
(C語言)地址為什么要變成指針才能賦值給指針變量呢?
指針就是地址。所以你的問題不對。
我的理解是,我想問為什么變量需要取地址,然后給指針變量賦值,即int a,*P P=&a
讓我們來談?wù)勔粋€小概念,數(shù)字23,在句子“我今年23歲”中,23的意思是年齡;在句子“我的偶像穿著23號籃球服”,23是籃球服的號碼。也就是說,數(shù)字23在不同的句子環(huán)境中具有不同的語義。
在本文中,我們定義了兩個成形變量。在內(nèi)存中,它們都存儲二進(jìn)制代碼,但語義不同。一個用于存儲整數(shù),另一個用于存儲指向成形變量的指針??傊?,這兩個變量是不一樣的。一個是存儲常用值的公共變量,另一個是存儲另一個變量的物理地址的特殊變量(因此我們需要添加*符號來區(qū)分它)。
你能理解嗎?如果你不明白,你可以請我再回答這個問題。
怎么給一個指針賦值?
例如,如果打開一個空格:char*P=(char*)malloc(10),則可以指定1,strcpy(P,“Hello”)2,數(shù)組形式指定。P[0]=“a”P[1]=“B”3。指針窗體賦值。*P=“a”P=“B”4。Memset(P,“a”,10)將所有內(nèi)存空間初始化為字符“a”