好吧,我很初學,並試圖使用指針將字符串輸入到char數組中。然後顯示我寫的內容。使用數組和指針輸入字符串
有兩件事我想問。首先,如果我不想爲數組指定大小,只是想擴展爲包含我輸入的所有字符串,那是怎麼回事? 第二次,我輸入字符串後,顯示它......它不會包含字之間的空格...... 就像我輸入「我愛餅乾」...它會顯示爲「ilovecookies」..所以如何解決?
下面是我的一些代碼...
#include <iostream>
using namespace std;
int main()
{
char *strP , str[100] ;
strP = str ;
for(int i =0 ; i<10 ; i++) cin >> *(strP+i) ;
for(int i =0 ; i<10 ; i++) cout << *(strP+i) ;
return 0;
}
對不起我的愚蠢的問題,我是初學者這種語言說,不希望在移動之前錯過的事情。
在此先感謝。
使用getline處理帶有空格的輸入。除非你有更好的理由,否則不要使用scanf和printf;他們使用可變參數,因此編譯器無法爲您捕獲類型錯誤,並且它們是緩衝區溢出錯誤的來源。 – 2010-02-12 19:00:15