1樓:匿名使用者
string ,定義成指標,只能指向一塊地址,"ksjk"是一塊,"sjdhj"是另外一塊,你賦值兩次,其實將string指向了"sjdhj",當然只能輸出sjdhj
2樓:匿名使用者
您定義的char*string;string是指標存的是字串的首地址。而你後面給指標賦值,string首先存放的是ksjk的首地址,再次賦值string裡面的地址存放的是『sjdhj』的首地址;所以string裡存的只是sjdhj的首地址。
3樓:淦海瑤
當然是後面的賦值算數了,呵呵
4樓:匿名使用者
string="ksjk"; string被賦值。string="sjdhj"; string再次被賦值,覆蓋前面所付的值 ,所以輸出兩個"ksjk"
5樓:匿名使用者
當然可以,第二次賦值把第一次賦值的覆蓋了,自然兩個都是sjdhj啦
6樓:
後面的賦值將前面的覆蓋了,string指的都是「sjdhj「的存放地址了
7樓:路開
覆蓋了 後面一個把前面的覆蓋了
8樓:匿名使用者
列印出來的以列印前變數中的最後賦值為準
9樓:米翔仁文宣
記憶體總是儲存變數最後一次值行的結果。
10樓:姒中折荌荌
string是個字元指標,執行string="ksjk";時是把字串"ksjk"的首地址賦給string。同理,執行string="sjdhj";時是把字串"sjdhj"的首地址賦給string。因為string="sjdhj";是後執行的,所以string最後儲存的值是字串"sjdhj"的首地址,輸出的結果自然也都是"sjdhj"。
11樓:堅俐卯貞
進行的copy操作,後一次把前面那次覆蓋了,所以永遠只能看到最後一次的操作
12樓:封善溥瑛
你定義的string是個指標,指標式沒有記憶體空間的,它只指向地址,你的兩個賦值語句string="ksjk";
string="sjdhj";
實際上是將字串的首地址賦予了指標,並不是字串本身,因此你的後一個賦值語句會將你前面的一個覆蓋掉
c字串賦值
13樓:幻翼高達
需要準備的材料分別有:電腦、c語言編譯器。
1、首先,開啟c語言編譯器,新建一個初始.cpp檔案,例如:test.cpp。
2、在test.cpp檔案中,輸入c語言**:char a[20];strcpy(a, "hello");printf("%s", a);。
3、編譯器執行test.cpp檔案,此時成功將字串賦值給了字串a並列印。
14樓:♂凡鳥
字串不能這樣賦值
*str其實和str[0]是等效的
另外str是陣列,所以這個指標是常量,所以也不能使用類似str="asdf";的方式進行賦值。
你可以用中的strcpy()函式,該函式會自動新增\0#include
main()
15樓:
直接初始話就可以了,str已經是地址了,不需要再加"*"。
#include
void main()
16樓:謝謝你
#include
void main()
下面是執行結果:
aldkjflakdsjfalkfj
press any key to continue
17樓:匿名使用者
為什麼要在str前面加個*呢。
可以通過賦值語句將一個字串賦給一個字元陣列嗎?
18樓:匿名使用者
宣告的時候可以,否則的話只能使用strcpy,或者一個成員一個成員的賦值
宣告的時候:
char str[20]="1234567890";
或者:char str[20]=;
strcpy(str,"1234567890");
c++中,未做其他說明,char a;那麼a是字元型還是字串型呢,可以做賦值a=「a」嗎?
19樓:crazy_小豬
char a
是字元型的
所謂的字元「串」,就是字元的複數形式,而什麼型別能儲存這個字元的複數形式呢。
那就是陣列,即: char a[x],其中x為整數。
而『』和「」 也很好記, 就是單引號只能儲存一個字元,雙引號可以儲存多個字元, 「雙」大於「單」,所以雙引號可以儲存字串。
按照我說的方法記,很好記的
20樓:
肯定是字元型了!不能a="a";,只能a='a';。
21樓:匿名使用者
那樣複製不可以,可以這樣賦值char [ ]a = "a";
c語言 字串之間如何賦值?
22樓:
全是錯誤的——
cahr a[100],b[100];//這樣才能承載字串,char a,b;這樣a、b只能存入一個字元
scanf("%s",a);//寫scanf("%s",&a);也可以
strcpy(b,a);//只能這樣呼叫庫函式拷貝,因為c沒有字串變數,也就沒有字串操作運算子。
c 字串擷取,C 擷取字串
這個問題其實有兩個注意點 字串的儲存。c c 裡面斜槓是轉義符,因此所檢閱的字串中如何有 的話,比如是這樣的格式 否則你應該按位元組處理。如果是c 那麼用類庫就可以解決。下面的例子通過stringstream轉儲string,然後分割儲存到vector中,最後數數vector的size,然後 1,就...
C語言字串問題,C語言字元陣列與字串問題
字串初始化,如果逐個賦值的話,系統不是會自動新增 0 嗎不是。圖一就是長度為4的陣列,圖二長度為5圖三會是新增 0,但是是會把後面所有的都設為 0因為圖一和圖四不以 0結尾,所以不能用strlen和strcmp,會越界 圖四也可以用char str 4 stop 這樣賦值。如果不手動加長度就會是5了...
c 字串長度函式,求字串長度函式 C
司馬刀劍 string str welcome to chaina int m1 str.size 求字串長度或者下面的 int m2 str.length 同上面size功能一樣,都是求字串長度的 賈林龐喬 sizeof 得到的是資料型別的長度,比如int char double型別的sizeof...