c語言中用指標的方式給字串賦值,如何將其另外複製到另

時間 2021-10-14 21:56:17

1樓:匿名使用者

char *a,*s;

a="i love you";

*s=*a;

這樣不對。s和a變成了同一指標。

char s;

s=*a應該是通不過編譯的。

試試char *a,*s;

a="i love you";

strcpy(s, a);

2樓:匿名使用者

a="i love you"; // 這是一個字串,指標a指向的是字串首字母i,即a=&i;

我建議你使用這種方式來定義這句話

char a="i love you",b[20]; //先給b開闢空間,a是字元陣列

int i;

for(i=0;*(a+i)!='\0';i++) //這就話就實現了複製

*(b+i)=*(a+i);

*(b+i)='\0';

因為ab陣列存在不同的地方所以這種方法是肯定沒有影響的好久沒粘c了忘的差不多了,不知打對不對的說

3樓:123冰霜雪月

恩 你這樣說過是不對的哈 因為你沒有申請記憶體哈 如:char *a,*s;

a="i love you"; 就是非法訪問了 同樣*s=*a 錯的有點大了

4樓:匿名使用者

字元竄賦值可以用strcpy(a,s);函式,加上標頭檔案#include"string,h"

c++如何將一個指標的值賦值給另一個指標,並且兩個指標不共用一個地址?

5樓:

首先指標全名叫《指標變數》

所以他本身是變數,既然是變數就要有值,而他的值就是指標指向的地址(在32位系統下是一個無符號的32位整數),

所以可以這麼說任何兩個指標都不共用一個地址,但是可以指向同一個地址!

像這樣int nnum = 10;

int* p1 = &nnum;

int* p2 = &nnum;

p1和p2指向的地址相同,但是p1和p2的地址卻是不同的如果我理解的沒錯的話你想說的是兩個指標指向同一個地址,但是這是不可能的!

既然是指標值賦值給另一個指標,那麼一定是指向同一地址的,算了,看到*c=*d;的寫法我哭了!

c語言中怎麼字串賦值,C語言中怎麼字串賦值?

幻翼高達 需要準備的材料分別有 電腦 c語言編譯器。1 首先,開啟c語言編譯器,新建一個初始.cpp檔案,例如 test.cpp。2 在test.cpp檔案中,輸入c語言 char a 20 strcpy a,hello printf s a 3 編譯器執行test.cpp檔案,此時成功將字串賦值給...

c語言,字串,C語言中,字串是什麼?

c語言中,字串是什麼?位操作運算都只能是整形或字元型,字元型實際是單位元組整形。包括以下幾個操作符 按位與 按位或。按位異或。左移 右移 另外還有一個取餘操作 a b的意思是,a除以b,取餘數。這個是c語言的硬性規定,位操作都是正數按照二進位制進行表達的時候才有的概念 而取餘操作是整數相除得餘數,餘...

c語言中字串連線怎麼解決,C語言中字串連線怎麼解決??

大野瘦子 include char a 10 123 char b 10 abc char c 20 strcpy c,a 把串a複製到有足夠空間的c中strcat c,b 把b連線到c的串尾需要注意的事項 c的長度一定要能夠容納要轉換的數字的長度,比如下面的例子,c的長度至少為8 1234567 ...