c 中定義了string類字元陣列,如何輸出string裡單個字元(比如字元)

2021-03-24 04:19:03 字數 5107 閱讀 9698

1樓:匿名使用者

直接取就可以了。例如:

string name="hello";

name[0];//這裡name[0]就是第一個字元'h'

2樓:滄海雄風

dpress any key to continue#include

#include

using namespace std;

main()

3樓:匿名使用者

/* strcpy.c: this program uses strcpy

* and strcat to build a phrase.

*/#include

#include

void main( void )

output

string = hello world from strcpy and strcat!

在c++語言中 定義一string型別的字串 如何取字串中的一個字元

4樓:匿名使用者

string str = "123456789" ;

if(str.length() >=5)

使用substr一定要判斷否則程式會越界!

5樓:高興的傑叔

用字元指標 指向該字串 此時指標指向字串的首地址,然後利用指標的移動取字串中的字元

6樓:匿名使用者

#include

#include

using namespace std;

int main()

7樓:匿名使用者

可以將string型別的變數賦值給char陣列,如string str=「asfd」;char ch=str;用陣列下標就可以取值了

8樓:諸天弒神

利用陣列s[i]取第i-1個字元

9樓:匿名使用者

s.c_str[i]

c++,定義了一個string類的物件陣列,怎麼訪問陣列中第5個元素物件中的第3個字元?

10樓:du知道君

c++示例:

#include

#include

using namespace std;

int main()

;cout<

return 0;

}執行結果:q

c++中string和char定義的字串和字元陣列的區別,在用時是不是一樣的?

11樓:司馬刀劍

明確一下:

你說的char是c++的內建型別char麼你說的string是標準庫中定義的類麼

如果是的話,它兩的區別有:

char陣列僅僅是儲存字串用的,c庫中有一系列操作字串的函式string是類,它包含一個可變長度的char陣列,封裝了常用的字串操作函式

它們之間可以轉化

12樓:匿名使用者

不一樣的,string是一個以上的char組成,最後一位還又字串結束符\n

string,可以儲存,單詞句子,

char只能儲存字母,字元等一位的符號

13樓:最大的_大寶寶

string是一個類,一個模板類,有些c++的書可能會介紹這個類,可以重點學一下

在c++裡如何輸入一個string類的字串,我定義的是字串變數string str,比如輸入c a s t中間有空格呀

14樓:匿名使用者

char *到string類可以直接用=,因為string類過載了=操作符,而且提供了以char *為源的拷貝建構函式.

但string到char *就不能用=了,string類的c_str()函式可以返回它的字串的首地址,你可以用如下方法將string賦給char *.

#include

using namespace std;

void main()

15樓:匿名使用者

#include

using namespace std;

int main()

{string str1;

char str2[20];

int l1,l2;

getline(cin,str1);//輸入l1=str1.length();//計算字串長度gets(str2);//輸入

l2=strlen(str2);//計算字串長度cout<<"str1: "<慢體會……

16樓:匿名使用者

如果你用cin>>或scanf()函式的話,遇到空格會返回;

如果你用gets()函式的話,遇到空格就不會返回了,遇到回車才返回;

gets()格式:

char *p;

gets(p);

那麼字串就以p為首地址存放,記得給p分配足夠的空間就好。

17樓:鄭誠的祕密

如果是一個字元型陣列的話,可以用cin.getline(str,100);

但是如果是string類的字串,由於string類字串不指定長度的,因此不能用這條語句。

應該直接用cin>>str;但是string類不能存放多個字串,也就是說中間不能有空格,要輸入 c a s t這樣的建議使用字元型陣列或者字元型指標,然後用cin.get(str,100).get();或分開寫,cin.

get(str,100);cin.get();

這樣輸入,老式編譯器不支援不帶引數的get(),可以用char ch;get(ch);來代替cin.get();

18樓:匿名使用者

補充1樓的, 宣告p的時候可以用

char p[100]; 這樣免除使用動態記憶體

c++用字元陣列給string 陣列中某一個string賦值問題

19樓:止語

p1[0](ch1): 在沒有適當 operator() 的情況下呼叫類型別的物件或將函式轉換到指向函式的型別。

p1[0]=ch1;執行正常,沒有問題。

20樓:匿名使用者

char ch1 =;這個地方可能有錯,char陣列的元素是單個字元,ch是兩個字元。

c++題目  字串類的設計 一、定義點字串(string)類,包含存放字串的字元陣列和字串 10

21樓:匿名使用者

#include

#include

using namespace std;

class student

void setname(char na[ ])};class userdatabase

void add_record(char *nu,char *na);

};void userdatabase::add_record(char *nu,char *na)

int main()

return 0;

c++中如何將一個string類物件裡的字串完整賦值給一個字元型的陣列?

22樓:匿名使用者

string s="dsafjsakfas";

int ilen=s.length();//得到字串的長度char *s1=new char[ilen+1];

for(int i=0;i可以像字元陣列一樣直接訪問下標為i 的字元//知道這點你應該就知道怎樣做了.

}si[i]='\0';

大致就這樣,自己寫的,沒有複製貼上

23樓:匿名使用者

#include

#include

using namespace std;

void main()

c++中的char定義的陣列和string的字串有什麼區別啊?

24樓:匿名使用者

明確一下:

你說的char是c++的內建型別char麼你說的string是標準庫中定義的類麼

如果是的話,它兩的區別有:

char陣列僅僅是儲存字串用的,c庫中有一系列操作字串的函式string是類,它包含一個可變長度的char陣列,封裝了常用的字串操作函式

它們之間可以轉化

25樓:匿名使用者

你問的陣列問題的話。不知道我的解釋你感覺怎麼樣。

在資料結構的課程裡。

char型的陣列是這樣的:

char[0] = 'a' char[1] = 'b'

而string[0] = "asdasdasd" string[1] = "asdasdasd"

這樣的解釋應該有助於你的理解

26樓:匿名使用者

對於char陣列

:#include

int main()

執行結果:

www**q

a=www

b=**q

a大於b

press any key to continue二者的區別在於:在char陣列中 輸入www回車,輸入**q回車 即可完成輸入,程式執行

在string物件中 輸入www回車,輸入**q回車,還要再輸入一個回車才能完成輸入

回車傳送資料到程式中,getline替換回車為'\0' ,寫字串難道不是這樣嗎?

為什麼後者還要多輸入一次回車呢??

27樓:匿名使用者

一個是 's'

一個是 "s"

就這點區別

28樓:圭帆召胤

都沒有說到重點,

char

是值型別!

string

是引用型別!這個可是本質的區別。

string可以被例項化,而char不可以。

c中string是否以0表示字串結束

stl的string也是已 0 作為字串結束標誌。str hello 0 0world str的值是 hello 0 如果你cout str 這樣輸出的結果確實為hello,後面的內容輸出不來,但是仍然存在的。你仍然可以通過str 6 這種方法得到。補充 如果str是string則不是這樣,後面的東...

c 類裡定義的字元型陣列const char a

有多種方式可以賦值。1 宣告和初始化同時進行,例如 const char a 5 2 把它看成字串,用636f707962616964757a686964616f31333337616535 strcpy 賦值,例如 strcpy a,abcde 3 用 memcpy 把另一個陣列裡的值傳給它 me...

C編寫程式在字元陣列中查詢指定的字元,若陣列中有蓋

include include void main if i strlen ch printf 1 n 在一個字元陣列中查詢一個指定的字元,若陣列中含有該字元,則輸出該字 符在陣列第一次出現的位置 下標值 include include include int main if i strlen s ...