作者JeremyKSKGA (J)
看板C_and_CPP
標題[問題] 關於一個程式
時間Mon Mar 23 09:13:07 2009
我要設計一個程式
在讀取input檔時能輸出的output檔
是幾行文字反過來寫的
譬如:
input.txt檔的文字內容為
Hello everybody!!
我是Jeremy
請大家多多指教^^
要使output.txt內容為
!!ydobyreve olleH
ymereJ是我
^^教指多多家大請
我寫的程式碼如下
#include <cstdlib>
#include <iostream>
#include <fstream>
#define LINE_LENGTH 64
using namespace std;
bool IsChinese(char ch1, char ch2);
int main(int argc, char *argv[]){
bool bChinese = false;
char array_in[LINE_LENGTH];
char array_out[LINE_LENGTH];
int lineDex;
int lineLen;
char chinese[3];
fstream Input, Output;
Input.open("input.txt", ios::in|ios::binary);
Output.open("output.txt", ios::out|ios::binary);
while(!Input.eof()){
Input.getline(array_in, LINE_LENGTH);
// cout<<array_in<<endl;
lineDex =0;
lineLen = strlen(array_in);
//cout<<lineLen<<endl;
array_out[lineLen-1]='\n';
//cout<<array_in<<endl;
while(lineDex<lineLen-1){
bChinese = IsChinese(array_in[lineDex], array_in[lineDex+1]);
if(bChinese==true){
array_out[lineLen-2-lineDex]=array_in[lineDex];
array_out[lineLen-2-lineDex+1]=array_in[lineDex+1];
lineDex += 2;
//chinese[0] = array_in[lineDex];
//chinese[1] = array_in[lineDex+1];
//chinese[2] = '\0';
//cout<<"chinese"<<chinese<<endl;
}else{
array_out[lineLen-2-lineDex]=array_in[lineDex];
lineDex++;
}
}
cout<<array_out;
Output.write(array_out, lineLen);
Output.write("\n", 1);
}
Input.close();
Output.close();
system("PAUSE");
return EXIT_SUCCESS;
}
bool IsChinese(char ch1, char ch2){
bool bResult = false;
if(ch1 >= (char)0xa1 && ch1 <= (char)0xf9){
if(
(ch2 >= (char)0x40 && ch2 <= (char)0x7f)
|| (ch2 >= (char)0xa1 && ch2 <= (char)0xfe)
){
bResult = true;
}
}
return bResult;
}
可是我執行的結果卻沒有我想要的輸出結果
請問我程式碼該如何修改呢??
拜託了!!
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 140.116.191.1
1F:→ fjm31714:你該不會是同學吧XDDD 03/23 09:24
2F:推 tzuci6649:初始化 memset( array_out, '\0', sizeof( array_out ) 03/23 10:03
3F:推 Ebergies:#19nJkPeW 你們可以互相討論討論說不定還可以相認... 03/23 13:50
4F:→ JeremyKSKGA:2樓請問那個memset要貼在哪個地方? 03/23 16:29
5F:→ JeremyKSKGA:還有 我看不太懂 #19nJkPeW是啥... Orz 03/23 16:29
6F:→ akasan:把那串複製起來在文章列表貼上後按ENTER就知道了XD 03/23 20:13
7F:→ JeremyKSKGA:靠 我發現那篇文章是我們系的同學po的 大驚 03/23 21:42
8F:→ fjm31714:樓上是哪位啊?來查一下IP XDDD 03/23 22:27
9F:→ fjm31714:囧不是宿舍的IP 03/23 22:30
10F:推 snowlike:0x7f->0x7ehttp://www.cmex.org.tw/cmex/info.htm#cns116 03/23 23:14