我有這樣的代碼:使用「函數getline」使用數組
#include <iostream>
#include <cstring> // for the strlen() function
int main()
{
using namespace std;
const int Size = 15;
static char name1[Size]; //empty array
static char name2[Size] = "Jacob"; //initialized array
cout << "Howdy! I'm " << name2;
cout << "! What's your name?" << endl;
cin >> name1;
cout << "Well, " << name1 << ", your name has ";
cout << strlen(name1) << " letters and is stored" << endl;
cout << "in an array of " << sizeof(name1) << " bytes" << endl;
cout << "Your intitial is " << name1[0] << "." << endl;
name2[3] = '\0';
cout << "Here are the first 3 characters of my name: ";
cout << name2 << endl;
cin.get();
cin.get();
return 0;
}
的問題
在這段代碼中,唯一的問題是,如果你用空格輸入你的名字,它會跳過姓氏之後的空間。 getline()方法可以解決這個問題,但我似乎無法完成。解決這個問題甚至可能有更好的方法。總而言之,我希望能夠在開始提示時輸入名字和姓氏(一個全名)。
程序
程序簡單地提示,使用輸入他們的名字,然後輸出該用戶名,與以字節爲單位的大小和用戶的姓名的前三個字符沿。
這將是更好地使用'的std :: string'。 – chris
它可能是;不過,我正在嘗試學習如何使用數組來做到這一點。 – Jake2k13
如果這是家庭作業,並且您需要*使用陣列,請繼續。否則,你最好忽略數組並僅使用'std :: string'。 –