首页 > 其他分享 >学习笔记2 代码

学习笔记2 代码

时间:2023-09-17 17:12:42浏览次数:36  
标签:bin 文件 char outputFile 代码 笔记 学习 hello inputFile

静态库测试代码

gcc src/hello.c -c -Iinclude -o bin/hello.o
cd bin
ar rcsv libhello.a hello.o
cd ..
mv bin/libhello.a lib
gcc src/main.c -Iinclude -Llib -lhello -o bin/hello

动态库测试代码

gcc -fPIC -shared src/hello.c -Iinclude -o lib/libhello.so
export LD_LIBRARY_PATH = '/home/study/lib'
gcc src/main.c -Iinclude -Llib -lhello -o bin/h2

文件相关

将文本文件转换为二进制文件:

#include <stdio.h>  

int main() {    
    FILE *inputFile, *outputFile;
    char inputFileName[] = "input.txt"; // 替换为输入文件名
    char outputFileName[] = "output.bin"; // 替换为输出文件名
    char ch;

    // 打开输入文本文件
    inputFile = fopen(inputFileName, "r");
    if (inputFile == NULL) {
        perror("无法打开输入文件");
        return 1;
    }

    // 打开输出二进制文件
    outputFile = fopen(outputFileName, "wb");
    if (outputFile == NULL) {
        perror("无法创建输出文件");
        fclose(inputFile);
        return 1;
    }

    // 逐字符读取文本文件并写入二进制文件
    while ((ch = fgetc(inputFile)) != EOF) {
        fwrite(&ch, sizeof(char), 1, outputFile);
    }

    // 关闭文件
    fclose(inputFile);
    fclose(outputFile);

    printf("文本文件转换为二进制文件成功。\n");
    return 0;
}

标签:bin,文件,char,outputFile,代码,笔记,学习,hello,inputFile
From: https://www.cnblogs.com/yuanyi23/p/17709192.html

相关文章

  • Vue学习六:路由进阶
    一、路由的封装抽离目标:将路由模块抽离出来。好处:拆分模块,易于维护。第一步:在src目录下新建一个router目录,在创建一个index.js文件,将先前main.js中的路由代码转移到index.js文件中。(这里需要使用到vue所以需将vue包导入;需修改组件路径,@符号代表绝对路径src;需将路由实例导出)index......
  • Linux学习之CentOS(二十七)--Linux磁盘管理:LVM逻辑卷的拉伸及缩减
    您可以通过点击右下角的按钮来对文章内容作出评价,也可以通过左下方的关注按钮来关注我的博客的最新动态。如果文章内容对您有帮助,不要忘记点击右下角的推荐按钮来支持一下哦如果您对文章内容有任何疑问,可以通过评论或发邮件的方式联系我:[email protected]......
  • 《信息安全系统设计与实现》第二周学习笔记
    I/O库函数方便用户使用,提高文件操作整体效率的一系列文件操作函数。I/O库函数与系统调用系统调用函数open()read()write()lseek()close()I/O库函数fopen()fread()fwrite()fseek()fclose()I/O库函数的算法fread在第一次调用fread()时,FILE结构体的缓冲区是空的,fread()使用保存的文件......
  • Unix/Linux系统编程学习笔记第九章
    《信息安全系统设计与实现》第二周学习笔记第九章I/O库函数I/O库函数与系统调用每个I/O库函数的根都在对应的系统调用函数中系统调用函数open()read()write()lseek()close()I/O库函数fopen()fread()fwrite()fseek()fclose()I/O库函数的算法fread算法:(1)第一......
  • Qemu源码分析(5)—Apple的学习笔记
    一,前言前言本节主要看线程什么时候创建的及创建的线程有什么作用。二,源码分析第一次进入断点仅主线程4215.root@ubuntu:/home/applecai#ps-T-p4215PIDSPIDTTYTIMECMD42154215pts/800:00:00qemu-system-gnu通过搜索文件名pthread关键字,然后找到qemu-thread-posix.c......
  • 20211325 2023-2024-1 《信息安全系统设计与实现(上)》第二周学习笔记
    202113252023-2024-1《信息安全系统设计与实现(上)》第二周学习笔记 一、任务要求自学教材第九章,提交学习笔记(10分)本章是复习C语言中的文件操作内容,结构化从文本文件操作,二进制文件操作两个大内容考虑,以前可能只关注文本文件的操作,我们以后更多的是操作二进制文件。文本文......
  • 2023-2024-1 20211327 信息安全系统设计与实现 学习笔记2(必做)
    学习笔记2C语言文件操作内容知识点总结运用ChatGPT进行苏格拉底挑战,发现问题与解决思路实践过程截图C语言文件操作内容知识点总结C语言文件基础操作字符读写、行读写、任意位置读写数据结构读写结构化从文本文件操作二进制文件与文本文件转换C语言文件基础操作1.......
  • Linux学习之CentOS(三十一)--Linux远程管理之SSH、VNC
    您可以通过点击右下角的按钮来对文章内容作出评价,也可以通过左下方的关注按钮来关注我的博客的最新动态。如果文章内容对您有帮助,不要忘记点击右下角的推荐按钮来支持一下哦如果您对文章内容有任何疑问,可以通过评论或发邮件的方式联系我:[email protected]......
  • C++ Primer 学习笔记——第十章
    第10章前言在前面我们学习容器的时候,是否发现标准库下的对容器的操作并不是太多(或许,初学时已经觉得好多了......
  • Linux学习之CentOS(二十四)--Linux软件管理之YUM软件管理
     您可以通过点击右下角的按钮来对文章内容作出评价,也可以通过左下方的关注按钮来关注我的博客的最新动态。如果文章内容对您有帮助,不要忘记点击右下角的推荐按钮来支持一下哦如果您对文章内容有任何疑问,可以通过评论或发邮件的方式联系我:501395377@qq.......