【发布时间】:2010-11-20 05:07:48
【问题描述】:
我知道一点 C,现在我正在研究 C++。 我习惯于用 char 数组来处理 C 字符串,但是当我查看 C++ 代码时,我看到有使用字符串类型和 char 数组的示例:
#include <iostream>
#include <string>
using namespace std;
int main () {
string mystr;
cout << "What's your name? ";
getline (cin, mystr);
cout << "Hello " << mystr << ".\n";
cout << "What is your favorite team? ";
getline (cin, mystr);
cout << "I like " << mystr << " too!\n";
return 0;
}
和
#include <iostream>
using namespace std;
int main () {
char name[256], title[256];
cout << "Enter your name: ";
cin.getline (name,256);
cout << "Enter your favourite movie: ";
cin.getline (title,256);
cout << name << "'s favourite movie is " << title;
return 0;
}
(两个例子都来自http://www.cplusplus.com)
我想这是一个被广泛询问和回答(显而易见?)的问题,但如果有人能告诉我在 C++ 中处理字符串的两种方法之间的确切区别(性能、API 集成、方法每个都更好,...)。
谢谢。
【问题讨论】:
-
这可能会有所帮助:C++ char* vs std::string