[問題] 關於一個程式

看板C_and_CPP作者 (J)時間16年前 (2009/03/23 01:13), 編輯推噓3(307)
留言10則, 6人參與, 最新討論串1/6 (看更多)
我要設計一個程式 在讀取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

03/23 09:24, , 1F
你該不會是同學吧XDDD
03/23 09:24, 1F

03/23 10:03, , 2F
初始化 memset( array_out, '\0', sizeof( array_out )
03/23 10:03, 2F

03/23 13:50, , 3F
#19nJkPeW 你們可以互相討論討論說不定還可以相認...
03/23 13:50, 3F

03/23 16:29, , 4F
2樓請問那個memset要貼在哪個地方?
03/23 16:29, 4F

03/23 16:29, , 5F
還有 我看不太懂 #19nJkPeW是啥... Orz
03/23 16:29, 5F

03/23 20:13, , 6F
把那串複製起來在文章列表貼上後按ENTER就知道了XD
03/23 20:13, 6F

03/23 21:42, , 7F
靠 我發現那篇文章是我們系的同學po的 大驚
03/23 21:42, 7F

03/23 22:27, , 8F
樓上是哪位啊?來查一下IP XDDD
03/23 22:27, 8F

03/23 22:30, , 9F
囧不是宿舍的IP
03/23 22:30, 9F

03/23 23:14, , 10F
0x7f->0x7ehttp://www.cmex.org.tw/cmex/info.htm#cns116
03/23 23:14, 10F
文章代碼(AID): #19nk8cXv (C_and_CPP)
文章代碼(AID): #19nk8cXv (C_and_CPP)