字串賦值printfsnstrcopypq出現段

2022-02-27 06:11:39 字數 776 閱讀 3229

1樓:匿名使用者

樓上的說法有待商榷。本人覺得是記憶體分配問題。

先看char *p = "123";

char *q = "abc";

你在這裡將字串"123"的首位址賦給了p,因此p裡面只存了乙個位址而已,你未對它實行足夠的記憶體,因為此處需要4個char型別的空間,而p指標後面的記憶體是未知的。

下面給你2個實驗:

實驗1:

char *strcopy(char *dest, char *src)

dest = (char *)malloc(1); //分配最後乙個空間

*dest = '\0';

return addr;

}怎麼樣?可以執行了吧?

實驗2:

把char *p = "123";改成下面:

char *p = (char *)malloc(4); //分配四個空間

*p++ = '1';

*p++ = '2';

*p++ = '3';

*p = '\0';

p-=3; //回到頭部

這樣定義怎麼樣?可以吧

2樓:手機使用者

#include

void strcopy (char *wordapre, char *wordbpre);

int main(void)

void strcopy (char *wordapre, char *wordbpre)

一定要記得置結束標誌。。

C符串賦值問題,求高手解答,C 字串賦值問題,求高手解答

型別 變數名 帶雙引號的常量 string a 我是中國人 變數名可以任意起名。不過不能以 數字 漢字 和 符號開頭 除了下畫線 等號後面可以是帶雙引號的任意字段 string abc console.readline 為從控制台窗體輸入值複製給abc 呵呵,這問題搞笑啦!string str va...

C字串內容賦值給C 的string類物件

char chr hello,world.或char chr hello,world.然後,string str chr 就行了,或者string str chr也行。樓主顯然沒有理解指標的作用啊,首先我先指出,樓主你宣告的是10個字元型別指標的變數,即宣告了10個指向字元型別的指標而非乙個可以容納...

字元常量與字串常量區別,字元常量與字串常量的區別是什麼

字串常量 以雙引號引起來的資料,如 hello 12345 he123 a 字元常量 以單引號引來的乙個字元,如 a 0 0 n 在計算機中乙個字元佔乙個位元組,其數值為字元的ascii值,如 a 97 0 48 字串常量 以雙引號引起來,字元常量 以單引號引來 字串常量是以雙引號引起來的資料,比如...