1樓:
char* chr = "hello,world.";
或char chr = "hello,world."
然後,string str( chr );就行了,或者string str = chr也行。
2樓:
樓主顯然沒有理解指標的作用啊,首先我先指出,樓主你宣告的是10個字元型別指標的變數,即宣告了10個指向字元型別的指標而非乙個可以容納10個字元的陣列,要知道單操作符的運算級別是最高的,所以你把指標的值賦給string型別的,顯然這是錯誤的,樓主可以這麼改:
1、char chr[10]="yes"; string = chr;
2、char *chr="yes"; string = chr;
或是用樓主的方法用assign函式給string型別的變數賦值。關鍵在於樓主沒有理解指標陣列和陣列指標的概念
3樓:隨心e談
我覺得用前面第乙個比較好,既然是乙個string類,那它就已經解決了儲存的問題,否則要這個類幹嘛?不如直接用陣列好了,
4樓:曾聽南
c++中如何將乙個string類物件裡的字串完整賦值給乙個字元型的陣列?
5樓:匿名使用者
string s="dsafjsakfas";
int ilen=s.length();//得到字串的長度char *s1=new char[ilen+1];
for(int i=0;i可以像字元陣列一樣直接訪問下標為i 的字元//知道這點你應該就知道怎樣做了.
}si[i]='\0';
大致就這樣,自己寫的,沒有複製貼上
6樓:匿名使用者
#include
#include
using namespace std;
void main()
c++怎麼給乙個string賦值
7樓:小丁創業
具體如下:
#include "stdafx.h"
#include
#include
#include"string" //操作字串必須包含的標頭檔案using namespace std;
void main()
8樓:
#include "stdafx.h"
#include
#include
#include"string" //操作字串必須包含的標頭檔案using namespace std;
void main()
擴充套件資料c++右值引用和移動賦值函式:
程式語言中賦值表示式左邊的值稱為左值,右邊的值稱為右值。左值對應記憶體的一段命名空間,可以用取址運算子「&」取出記憶體位址。
此時的記憶體單元有或顯式或隱式使用的位址值和實際值。右值則是顯式利用的是記憶體單元的實際值,其臨時存在於記憶體或暫存器中。使用「&&」運算子可以定義乙個右值引用,將乙個右值轉變為乙個左值,move()函式可以將乙個左值轉換為乙個右值。
左值引用,使用t&,只能繫結左值(其中t是乙個具體型別)。右值引用,使用t&&,只能繫結右值;常量左值,使用constt&,既可以繫結左值又可以繫結右值;已命名的右值引用,編譯器會認為是個左值。
9樓:四捨**入
string lsstr,lsstra; //定義
lsstr = 'aabbccdd'; //賦值
lsstra = lsstr; //同類賦值
10樓:
你是指這樣?:
char *str = "hello world!";
11樓:哎呀
一、c++中,string是乙個類(注意,不是型別)。它的賦值,直接將字串等於給它,或將同類的變數賦給它即可。比如:
string lsstr,lsstra; //定義
lsstr = 'aabbccdd'; //賦值
lsstra = lsstr; //同類賦值
1、不同編譯環境下的c++,對字串的處理稍有差別。
2、最原始的c語言中,沒有string,在c++裡才有了string這個類。
3、注意,string是乙個類,不是型別。類這個概念是c++才特有的,它的存在是為了模組化程式設計。類是乙個相對複雜的東西,它就象乙個單元,包含了自已內部的資料定義、函式等等。
二、值得注意的是,早期的c中,對字串的處理是用字元陣列來進行的,比如:
char s[30];
strcpy(s, "good news!"); /*給陣列賦字串*/ .
或是,讓編譯器在定義時,自動的處理(實際上還是做了上面的兩步):
char s[30] = "good news!";
三、對於字串的處理,c++中其實是乙個相對不好理解的東西,因為這涉及到了c/c++語言的指標,也就是說,無論是什麼方式,它的最根本的本質是用乙個指標指向了存放字串的位址。string這個「類」除了指標外,還擴充套件了常用的一些處理函式在裡面,比如字串擷取之類的。
四、還有一種比較容易混的:
char *str = "hello world!";
這說的是,定義乙個char指標str,它指向字串"hello world!"存放的位址的第乙個。
五、關於字串的處理,細說起來,還是有一些東西需要你自個去理解的,再說一次,主要還是涉及了指標,所以不太好理解。但是這些是學c/c++必需要理解的東西。指標、類、字串,可以說是c++裡的難點,多練多思考吧。
c++中怎麼把乙個字串賦給乙個變數
12樓:匿名使用者
對於string型的變來量,直接賦值即可,源如string str="abcde";使用string類需要使用標頭檔案#include
對於char陣列型的變數,在宣告時可以直接賦值,如char str = "abcde",
對於char陣列型的變數,在非宣告的時候賦值時,不能直接賦值,如char str[64];str = "abcde";是不允許的,需要借助strcpy函式進行賦值,需要使用標頭檔案#include 。使用方法:
char str[64];
strcpy(str, "abcde");//將abcde拷貝到str陣列中。
13樓:風琦凌波
問題一的解決:
這個問題通常有兩種解決方法,乙個是
字元陣列(現已不常用)另回一答個是string類,當然這個要在標頭檔案中加上#include
**如下:
#include
#include
using namespace std;]int main()
14樓:愛做夢的男孩
可以使用:
strcpy(str, "abc");strcpy(str,"abcde");
但是bai
有一點要注意du,str的空間zhi
大小要夠存放後面的字串
dao.
這樣就可以把回abc賦值給str了.
包含答標頭檔案:
#include
字串陣列可以如下定義:
char *str[3]=
如果對str[0]賦值,同樣可以用上面的函式strcpy(str[0], "sfdsfsd");
在c++中,可以使用c++標準庫中的string類,定義string str;
str = "abc";
str = "abcde"
這個要新增如下標頭檔案
#include
using namespace std;
15樓:匿名使用者
cin>>str//輸入陣列str
cin>>str[1]>>str[2]//輸入字串str[1]和str[2]
cout< 16樓:小豬乖乖 char* str[5]; 使用指標就可以了 17樓:桐軍夷婉麗 for(i=1,i<=10,i++) {cstring string[20]; string[i].format("%d",i); c++編輯詞條 c++這個詞在中國大陸的程式設計師圈子中通常被讀專做「c加加」,而西 屬方的程式設計師通常讀做「c plus plus」,「cpp」。 它是一種使用非常廣泛的計算機程式語言。c++是一種靜態資料型別檢查的、支援多重程式設計正規化的通用程式語言。它支援過程化程式設計、資料抽象、物件導向程式設計、泛型程式設計等多種程式設計風格。 最新正式標準c++於2023年8月18日公布。其程式設計領域眾廣,常用於系統開發,引擎開發等應用領域,是至今為止最受廣大程式設計師受用的最強大程式語言之一,支援類:類、封裝、過載等特性! 型別 變數名 帶雙引號的常量 string a 我是中國人 變數名可以任意起名。不過不能以 數字 漢字 和 符號開頭 除了下畫線 等號後面可以是帶雙引號的任意字段 string abc console.readline 為從控制台窗體輸入值複製給abc 呵呵,這問題搞笑啦!string str va... 1 strlen函式是返回字元長度 以空字元為結束符 所以是5 2 sizeof str 返回是指定變數占用空間大小str是指標變數,指標大小為4,所以返回4你可以把str變成陣列 char str 12345 此時str是陣列,所以sizeof str 返回的是6 strlen 函式返回不包含結束... string str1 四川省宜賓市翠屏區 string result result str1.substring 0,str1.indexof 省 console.write result indexof是獲取指定字元在字串中的位置 索引值 substring startindex int,len...C符串賦值問題,求高手解答,C 字串賦值問題,求高手解答
C 字串長度與位元組的問題,C 字串有效長度的問題
c擷取字串