我有一个用C编写的小示例程序.我有一个main函数writeFile,它调用一个函数在二进制文件中写入一些数字.然后我调用overwrite0替换为0,最后打印结果.
这是代码:
#include <stdio.h>
/* Print the content of the file */
void printFile(){
printf("Read test.dat:\n");
int r;
FILE* fp = fopen("test.dat", "rb+");
if(fp) {
while(fread(&r,sizeof(int),1,fp)){
printf("%d\n", r);
}
}
fclose(fp);
}
/* Replace 0 with 1 */
void overwrite(){
int r;
FILE *fp = fopen("test.dat", "rb+");
if (fp) {
int i=0;
while (i < 4 && fread(&r, sizeof(int), 1, fp)) {
i++;
if (r == 0) {
r = 1;
fseek(fp,-sizeof(int),SEEK_CUR);
fwrite(&r,sizeof(int),1,fp);
}
}
} …Run Code Online (Sandbox Code Playgroud) 在我的项目中,我调用gtk_builder_add_from_file函数来加载带有之前用 Glade 设计的 ui 对象的 xml 文件。所以,我有我的二进制程序和(在同一文件夹中)xml 文件。
将所有内容打包到单个可执行文件中的最佳方法是什么?我应该使用自解压脚本吗?或者还有其他东西可以一起编译?
谢谢大家