windows环境下C程序生成可执行文件

本文详细介绍了在Windows环境下使用GitBash搭建C语言编程环境的过程,包括环境变量配置、gcc编译器安装及使用。并通过一个具体实例,演示了如何编写、编译并运行一个用于文件读写的C程序。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

windows环境下,编写C程序,生成.exe,用于操作某个文件。

包含三部分:搭建环境、程序实现、程序分析。

1、搭建程序编写和编译环境

  1. 在windows下安装Git Bash(下载页面)。

安装完成后,可以在windows的任意文件夹下,空白处点击右键,选择“Git Bash here”启动Git Bash。

  1. windows下的环境变量:

桌面-》鼠标右键单击我的电脑-》属性-》高级-》环境变量

  • 将C:\MinGW\bin和C:\Program Files/Git/usr/bin和C:\Program Files\Git\mingw64\libexec\git-core加入PATH
  • 将C:\MinGW\include加入INCLUDE
  • 将C:\MinGW\lib加入LIB
  1. Git Bash本身带了C语言编写程序vim,但是没有gcc,所以参考这里,在Git Bash中安装编译工具gcc。大致安装选项如下:
    Alt
    Alt

  2. 在Git Bash中,查看是否有vim和gcc。
    Alt

  3. 在C:\MinGW\bin下,将mingw32-make.exe复制到当前文件夹后重命名为make.exe。


2、读写文件的程序实现

1.在指定的文件夹中,空白处点击右键,选择“Git Bash Here”,比如我在桌面创建的“新建文件夹”:
Alt
2.创建并打开一个.c文件

vim 1.c

3.编写程序

#include <stdio.h>
#include <unistd.h>

#define FILENAME    "./2.txt"
#define WRITEWORDS   "These words are written in file.\n这是新加入的文件内容\n"

int main(){
    FILE *fd = NULL;           //文件描述符
    size_t Nmemb = 1;		   //以单次写入某个长度的方式写入的个数
	
    printf("test.");		   //测试结果打印
    fd = fopen(FILENAME, "a"); //打开一个名为FILENAME的文件,如果该文件夹没有则创建,权限为可读可写。
    if(NULL == fd){            //判断是否打开成功
        perror("open");
		return -1;
    }
    fwrite(WRITEWORDS, sizeof(WRITEWORDS), Nmemb, fd); //往文件写入WRITEWORDS字符串,不覆盖原文内容
    fclose(fd);    //关闭文件
    fd = NULL;     //清空指针
    while(1);
}

4.编译程序,即可在当前文件夹下生成.exe文件。

gcc 1.c

Alt

3.程序分析

程序实现里面已经有注释,此处说明一下如何获取一些函数和查阅资料的方法。

1.头文件来源:

  • stdio.h

标准输入输出,使用printf,scanf等都需要它。

  • unistd.h

因为使用了文件操作函数,所以需要包含它。一般是在linux环境下(此处是ubuntu中),使用指令 man 3 fopen ,即可查看到fopen的定义和使用方法,里面有显示包含的头文件。

2.函数使用方法查询:

  • 可以在linux下使用man手册进行查询
man 3 fopen
man 3 fwrite
man 3 fclose

Alt

  • 也可以结合网上的中文说明。

4.编译

  • 如果编译过程出现中文乱码,则在gcc编译后面加如下指令:
-fexec-charset=gbk

-finput-charset=gbk
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值