看板 C_and_CPP 關於我們 聯絡資訊
遇到的問題: (題意請描述清楚) 我在寫大數下字串反轉的題目, 當輸入的字串內不含0值時, 使用 strlen() 能將所輸入的數值正確反轉, 1234567 -> 7654321 但一旦有0值時就會停下。 1230456 -> 654 請問我該換什麼方法去計算原本輸入的字串長度? 謝謝。 希望得到的正確結果: 程式跑出來的錯誤結果: 開發平台: (例: VC++ or gcc/g++ or Dev-C++, Windows or Linux) Dev-C++ 有問題的code: (請善用置底文標色功能) void Rev(char a[], char b[]) //a 是原先輸入的字串 { int i; int j = strlen(a); for( i = 0 ; i < LEN ; i++ ) b[i] = 0; //將 b 初始化 for( i = 0 ; i < j ; i++ ) b[ j - i - 1 ] = a[ i ] ; } 補充說明: -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 219.85.35.146
bleed1979:原先字串應該已經-'0'了吧? 在減之前計算然後傳入。 08/17 17:43
Cidolfas:感謝解惑! 08/17 17:49