fix: fix free hex_str
This commit is contained in:
@@ -764,8 +764,8 @@ int main() {
|
|||||||
// char *filename; filename 未分配内存
|
// char *filename; filename 未分配内存
|
||||||
char filename[100]; // 假设文件名长度不超过 99 个字符
|
char filename[100]; // 假设文件名长度不超过 99 个字符
|
||||||
printf("Enter the name of the saved file: ");
|
printf("Enter the name of the saved file: ");
|
||||||
// scanf("%s", filename);
|
scanf("%s", filename);
|
||||||
strcpy(filename, "1.txt");
|
// strcpy(filename, "1.txt");
|
||||||
|
|
||||||
// 生成的比特串保存在文本文件中
|
// 生成的比特串保存在文本文件中
|
||||||
FILE *file = fopen(filename, "w");
|
FILE *file = fopen(filename, "w");
|
||||||
@@ -775,7 +775,8 @@ int main() {
|
|||||||
}
|
}
|
||||||
|
|
||||||
clock_t start_time = clock();
|
clock_t start_time = clock();
|
||||||
|
char *hex_str =
|
||||||
|
(char *)malloc(sizeof(char) * (returned_bits_len / 8 * 2 + 1));
|
||||||
for (int j = 1; j <= returned_bits_num; ++j) {
|
for (int j = 1; j <= returned_bits_num; ++j) {
|
||||||
do {
|
do {
|
||||||
int zero_count = 0;
|
int zero_count = 0;
|
||||||
@@ -809,15 +810,14 @@ int main() {
|
|||||||
} while (!pass);
|
} while (!pass);
|
||||||
|
|
||||||
// 将二进制数据转为十六进制后写入文件
|
// 将二进制数据转为十六进制后写入文件
|
||||||
char *hex_str =
|
|
||||||
(char *)malloc(sizeof(char) * (returned_bits_len / 8 * 2 + 1));
|
|
||||||
for (int i = 0; i < returned_bits_len / 8; ++i) {
|
for (int i = 0; i < returned_bits_len / 8; ++i) {
|
||||||
sprintf(&hex_str[i * 2], "%02x", returned_bits[i]);
|
sprintf(&hex_str[i * 2], "%02x", returned_bits[i]);
|
||||||
}
|
}
|
||||||
hex_str[returned_bits_len / 8 * 2] = '\0';
|
hex_str[returned_bits_len / 8 * 2] = '\0';
|
||||||
fprintf(file, "%s\n", hex_str); // 写入带有换行符的十六进制字符串
|
fprintf(file, "%s\n", hex_str); // 写入带有换行符的十六进制字符串
|
||||||
free(hex_str);
|
|
||||||
}
|
}
|
||||||
|
free(hex_str);
|
||||||
|
|
||||||
clock_t end_time = clock();
|
clock_t end_time = clock();
|
||||||
double execution_time = (double)(end_time - start_time) / CLOCKS_PER_SEC;
|
double execution_time = (double)(end_time - start_time) / CLOCKS_PER_SEC;
|
||||||
|
|||||||
Reference in New Issue
Block a user