暗号化アプリケーションの作業を開始しましたが、動作中にプログレス バーを表示する方法を考えすぎたようです。
タスクは単純です lSize は、暗号化されるファイルの合計サイズです。
C++ で次のループを使用
//********** Open file **********
FILE * inFile = fopen (argv[1], "rb");
fseek(inFile , 0 , SEEK_END);
unsigned long lSize = ftell(inFile);
rewind(inFile);
unsigned char *text = (unsigned char*) malloc (sizeof(unsigned char)*lSize);
fread(text, 1, lSize, inFile);
fclose(inFile);
//*********** Encypt ************
unsigned char aesKey[32] = {
/* Hiding this for now */
};
unsigned char *buf;
aes256_context ctx;
aes256_init(&ctx, aesKey);
for (unsigned long i = 0; i < lSize/16; i++) {
buf = text + (i * 16);
aes256_decrypt_ecb(&ctx, buf);
}
aes256_done(&ctx);
//******************************************************
for ループの進行状況を動作中に表示するにはどうすればよいか考えていました。
これまでにどれだけのことが行われたかを計算する必要があることは知っていますが、その方法がわかりません。