String Obfuscationのコードを書こうとしていますが、実行中にトラップを中止するエラーが発生します。すべてのアイデアは高く評価されています:エラー:トラップを破棄する6 - 文字列の難読化
#include <stdio.h>
#include <math.h>
#include <string.h>
char* readLine_str_test_encrypt();
char* readLine_str_test_decrypt();
int main() { //body
printf("%s\n", readLine_str_test_encrypt());
printf("%s\n", readLine_str_test_decrypt());
}
char* readLine_str_test_decrypt() {
static unsigned char string[9] = {100, 115, 119, 114, 90, 127, 120, 115, 22};
static int i = 0;
for (; i < 9; ++i) {
string[i] ^= 22;
}
return (char*)string;
}
char* readLine_str_test_encrypt()
{
static unsigned char string[9] = "readLine";
char output[9];
char* output_start=output;
static int i =0;
for(; i < 9; ++i)
{
//string[i] = string[i]^22;
output_start += sprintf(output_start,"%d",string[i]^22);
}
return output_start;
}
私の復号化機能が正常に実行されています。
:1)一貫してコードをインデント。すべての開きブレース '{'の後にインデントします。すべての閉じ括弧 '}'の前にインデントします。 2)空白行を介してコードブロック(for、else、while、do ... while、switch、case、default)を区切ります。 – user3629249