史萊姆論壇

史萊姆論壇 (http://forum.slime.com.tw/)
-   程式語言討論區 (http://forum.slime.com.tw/f76.html)
-   -   C++的疑問 (http://forum.slime.com.tw/thread217612.html)

leowang 2007-10-05 09:14 PM

C++的疑問
 
PHP 語法:

#include<iostream>
#include<cstdlib>

using namespace std;
int main(void)
{
    
char a[10],b[10];
    
cout <<"Input a:";
    
cin.getline(a,10);
    
cout <<"Input b::";
    
cin.getline(b,10);
    
cout <<a<<":"<<b<<endl;
    
system("pause");
    return 
0;


這程式如何修改 不能更改陣列大小情況下 在輸入時超過陣列所能容入的字串
要把多餘字串的給移除掉 只列印出陣列能容納的字串
並且能夠正常輸入b字串

飛鳥 2007-10-05 11:14 PM

引用:

作者: leowang (文章 1821453)
PHP 語法:

#include<iostream>
#include<cstdlib>

using namespace std;
int main(void)
{
    
char a[10],b[10];
    
cout <<"Input a:";
    
cin.getline(a,10);
    
cout <<"Input b::";
    
cin.getline(b,10);
    
cout <<a<<":"<<b<<endl;
    
system("pause");
    return 
0;


這程式如何修改 不能更改陣列大小情況下 在輸入時超過陣列所能容入的字串
要把多餘字串的給移除掉 只列印出陣列能容納的字串
並且能夠正常輸入b字串

多餘字串有分左邊的跟右邊的:on_47:

leowang 2007-10-06 10:26 AM

也就是說例如輸入到a陣列裡的值leowang10000002
那列印出來的是leowang10 後面的0000002就不列印出來
還要能夠接著輸入"b:"

因為這程式的陣列只能有10個元素 如果超過所能所能容納的元素就會發生錯誤

joebin 2007-10-06 12:47 PM

引用:

作者: leowang (文章 1821453)
PHP 語法:

#include<iostream>
#include<cstdlib>

using namespace std;
int main(void)
{
    
char a[10],b[10];
    
cout <<"Input a:";
    
cin.getline(a,10);
    
cout <<"Input b::";
    
cin.getline(b,10);
    
cout <<a<<":"<<b<<endl;
    
system("pause");
    return 
0;


不能更改陣列大小情況下 在輸入時超過陣列所能容入的字串
要把多餘字串的給移除掉 只列印出陣列能容納的字串
並且能夠正常輸入b字串

有點不明白你的意思......如果說是正常輸入b字串,只要字元其餘部要

那可以降用押~由於getline是連'\0'和'\n'也會讀入的輸入方式

所以若確認輸入的字元量共10個,則建議

語法:

int ;
fstream fin("輸入檔案形式和名稱");
for(i=0;i<10;++) fin >> b[i];

用上面的方式可以避免掉輸入到空白或者換行的字元

問個疑問~你的程式碼有運用到含入檔,為何沒
#include<fstream> 和 fstream fin("輸入檔案形式和名稱");

這樣的話你的開檔路徑沒有,當然無法輸入字元阿:on_47:

leowang 2007-10-06 03:25 PM

這樣說好了
a只能夠儲存10個元素 b也一樣
這個程式在輸入的元素小於10(包含"\n")是正常的
但是如果超過10個元素的話 就會發生錯誤 會導致接下的要輸入的b會無法輸入直接會印出東西
要如何修改 如果輸入超過10元素 只列印出10元素 其餘的捨棄
但接下來要輸入b時要能夠輸入

也就是要避免錯誤的發生 只印出規定陣列大小內的東西


所有時間均為台北時間。現在的時間是 11:37 AM

Powered by vBulletin® 版本 3.6.8
版權所有 ©2000 - 2024, Jelsoft Enterprises Ltd.

『服務條款』

* 有問題不知道該怎麼解決嗎?請聯絡本站的系統管理員 *


SEO by vBSEO 3.6.1