1樓:康農繆迎曼
//第一個肯定不行,string是需要usingnamespace
std;
改這樣就可以了.
#include
#include
void
sayhello(std::string);
void
main()
void
sayhello(std::string
name)
{std::cout<<"good
morning!
"<不要+.h,你現在寫的是c++,不是c語言.
2樓:同學叫我神
你確定你用的vc6.0
怎麼6.0還能支援名稱空間的嗎?先進的咯
不過現在應該都不用6.0 了吧,強力推薦2005,2008就湊活你這問題也太奇怪了,既然都支援名稱空間了,怎麼標頭檔案還用.h 的呢這應該也不管string的事,而是iostream的事了cout在名稱空間std裡,用使用就要引用真奇怪你的編譯器,你應該要看一下c++標準,並多安裝一個vs2005這樣對一些比較現代的著作也能試驗,像這個6.
0都98年的了那時c++標準還沒釋出呢
3樓:
問題出在名稱空間上。
你可以這樣記憶,標頭檔案名帶.c的是c語言的標頭檔案不帶.c的是c++的標頭檔案。 你儘量用不帶.c的標頭檔案然後自己指明名稱空間
也就是usingnamespace std /*標重名稱空間*/
有問題可以繼續討論
補充一點 不是光string會出問題 你用其他的也出問題。記住我給你介紹的方法。絕對標準
4樓:匿名使用者
我開始也納悶。。。
只要在main函式上面加上這些就ok了:
#include
#include
using namespace std;
5樓:匿名使用者
using namespace std;
引入名稱空間。
如何在c#中使用c++的string型別
6樓:來自郡王府帥帥的迎春花
先搞清楚c++中的string用什麼文字編碼的? 比如ansi, unicode, utf-8等. 然後傳過來的時候作為位元組陣列傳, 也就是byte.
在c#裡面採用memorystream接收該byte陣列, 再用根據文字編碼, 使用streamreader將memorystream的內容讀出即可.
7樓:匿名使用者
c++裡面的string相當於c#裡面的stringbuilder,本質上是個char。string通過函式c_str可以轉換為 char型別。
語法:const char *c_str();
c_str()函式返回一個指向正規c字串的指標, 內容與本string串相同.
這是為了與c語言相容,在c語言中沒有string型別,故必須通過string類物件的成員函式c_str()把string 物件轉換成c中的字串樣式。
8樓:匿名使用者
這個主要還是編碼的問題。
不是 string型別不一樣,而是,沒有選擇好string的編碼
c++中string是類型別嗎
9樓:育知同創教育
比如std::string s1="hello world";
std::string s2="hello boy";
const char *cc1="hello girl";
const char *cc2="hello dog";
if (s1==cc1) //這是可以的if (s1==s2) //這是可以的
if (cc1==cc2) //這是錯誤的if(strcmp(cc1==cc2)) //這是可以的
10樓:璐人釔
string就是一個類,在std名稱空間中
11樓:惡疾臭魚
class才是類,string相當於c語言的char型別
c++中結構體中如何使用string類
12樓:匿名使用者
c++中結構體中使用string類與在其他地方使用string類用法相同。
使用string類需要注意如下幾點:
1、使用該類需要加標頭檔案#include ,注意不同於#include
2、該類是定義在名稱空間std中的,所以使用之前需要確保已using namespace std;否則需要以std::string的形式來引用。
3、string類不等價於char 陣列,需要區別對待。
13樓:匿名使用者
把主函式裡面的using namespace std;提到外面
而且你是用的string 不是char 陣列,所以就不用cin.get()來消去尾部字元了
大致是這樣吧,除錯一下,會很快知道錯在**的
14樓:匿名使用者
把using namespace std放到結構體struct car之前就行了
15樓:匿名使用者
加上using namespace std;
在標頭檔案包含完之後
或者用std::string 來宣告
c++string的用法問題,不知道為什麼用不了string型別
16樓:匿名使用者
因為 string 是 std名稱空間下的,就和cout 一樣..
所以 修改的方法有兩個..
1 加 名稱空間 限定
std::string name;
2 使用 using
using std::string;
17樓:匿名使用者
using std::cin;
using std::cout;
using std::endl;
using std::setw;
這裡都寫了四個using 你就再加個
using std::string;
或者直接換成
using namespace std;
18樓:匿名使用者
string在c++中並不是一個基本型別,而是一個完整的字串類。要使用需要include其標頭檔案,並且宣告使用空間如下:
#include
using std::string;
using std::wstring;
或using namespace std;
注意是,不是,帶.h的是c語言中的標頭檔案,標準c中處理字串都是char*的,而不是一個專門的基礎型別。這個中包含了日常所需的處理字串的一系列函式,但是引數都是char*型別的。
如果你是從c直接轉到c++的,最好去看一下c++標準庫以及物件導向的思維與實踐,那樣更適合平滑的過渡到c++。
c++中用string型別定義的指標是怎麼操作的,請說詳細點!
19樓:
跟其他型別的指標的操作沒有什麼區別,無非也是定義、初始化、賦值、解引用等。
20樓:逝水流
可以把string型別理解成一個vector
如何在c中使用c的string型別
來自郡王府帥帥的迎春花 先搞清楚c 中的string用什麼文字編碼的?比如ansi,unicode,utf 8等.然後傳過來的時候作為位元組陣列傳,也就是byte.在c 裡面採用memorystream接收該byte陣列,再用根據文字編碼,使用streamreader將memorystream的內容...
c中string型別和char型別的區別
char型別只能容納一個文字,在只想儲存並處理一個文字的時候的選擇。string是可以容納多個文字,當然一個也可以。關聯 對string進行處理的時候,有的時候,需要把string轉化成char 可以用這樣的方法 string str abcd char chr str 2 反之,由char轉化為s...
c中if條件裡連線string型別的字元是什麼
if txtsearchfrom.text chufadi txtsearchto.text mudidi 這樣就對了 注意比較是用雙等號 賦值是用等號 要和vb語法區別開,在vb中等號出現在條件語句中則為比較,其他地方為賦值,不要混淆。 那兩個字串是chufadi和mudidi 答案補充 等於號要...