#include <stdio.h>
#define OUTPUT_NAME "xp_start_wav"
void main() { int i, ret, start = 1; unsigned char buffer[24]; FILE *fp, *fp2;
fopen_s(&fp, "C:\\WINDOWS\\Media\\Windows XP 启动.wav", "rb"); if (fp != NULL) { fseek(fp, 0, SEEK_END); ret = ftell(fp); fseek(fp, 0, SEEK_SET);
fopen_s(&fp2, OUTPUT_NAME ".c", "w"); if (fp2 != NULL) { fprintf(fp2, "__attribute__((aligned)) const unsigned char " OUTPUT_NAME "[%d] = {", ret); while (ret = fread(buffer, 1, sizeof(buffer), fp)) { for (i = 0; i < ret; i++) { if (i == 0) { if (start) start = 0; else fprintf(fp2, ", "); fprintf(fp2, "\n "); } else fprintf(fp2, ", "); fprintf(fp2, "0x%02x", buffer[i]); } } fprintf(fp2, "\n};\n"); fclose(fp2); } fclose(fp); } else printf("failed\n"); }
|