Windows系统中控制台下编译C/C++文件

2023-11-09 08:32

本文主要是介绍Windows系统中控制台下编译C/C++文件,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

    本文主要参考了此文章:http://blog.sina.com.cn/s/blog_4a5e32770100hfdh.html

    通常我们在Windows系统下编译程序是都使用IDE环境,如VC++6.0、VS2010等,直接点击几个按钮就可以完成工作,今天偶想在控制台环境下能够进行编译?网上查看后知道,只需设置一下环境变量就可以了。(以VS2010为例,里面有VC的功能)

    ../Microsoft Visual Studio 9.0/VC/bin:这里放有编译器 CL.EXE,将其加到系统变量中的PATH中即可;
    ../Microsoft Visual Studio 9.0/VC/include:这里放有 C/C++ header files,将其加到系统变量的INCLUDE变量下。(没有的话新建即可);
    ../Microsoft Visual Studio 9.0/VC/lib:这里放有 C/C++ standard libraries,将其加到系统变量的LIB变量下。

另外还需要将../Microsoft Visual Studio/Common/MSDev98/Bin加到系统变量PATH中,是因为编译器 CL.EXE 执行时需要

MSPDB80.DLL,否则会有如下提示:无法启动此程序,因为计算机中丢失mspdb80.dll。尝试重新安装该程序以解决此问题。如果发现在该目录下没有mspdb80.dll,网上下个放到里面即可。这样就可以进行编译C/C++文件了。

     如何进行编译呢?在控制台下进入你文件所在的目录下,敲入CL 文件名.cpp就OK了。

     另外自己找了个例子试了试,完全可以。

     文件内容:

 #include<stdio.h>
int main(int argCount,char* argValue[])
{
    FILE *srcFile=0,*destFile=0;
    int ch=0;
    if(argCount !=3)
    {
       printf("Usage:%s src-file-name dest-file-name/n",argValue[0]);
    }
    else
    {
       if((srcFile = fopen(argValue[1],"r"))==0)
       {
          printf("Can not open source file /"%s/"!",argValue[1]);
       }
       else
       {
          if((destFile = fopen(argValue[2],"w"))==0)
          {
             printf("Can not open destination file/"%s/"!",argValue[2]);
             fclose(srcFile);
          }
          else
          {
              while((ch=fgetc(srcFile))!=EOF) fputc(ch,destFile);
              printf("Successful to copy a file!/n");
              fclose(srcFile);
              fclose(destFile);
              return 0;
          }
        }
      }
      return 1;
}

    此程序摘自《高质量程序设计指南C++/C语言》,实现功能为将第一个文件的内容复制到第二个文件中(在命令行中输入文件名)。

    编译:CL mycopy.cpp。生成可执行程序mycopy.

    运行:mycopy 1.txt 2.txt。(1.txt、2.txt为目录下的两个文件,分别为源文件和目的文件)

    结果:将文件1.txt中的内容复制到了文件2.txt中了。

   

这篇关于Windows系统中控制台下编译C/C++文件的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/375073

相关文章

基于Python开发Windows屏幕控制工具

《基于Python开发Windows屏幕控制工具》在数字化办公时代,屏幕管理已成为提升工作效率和保护眼睛健康的重要环节,本文将分享一个基于Python和PySide6开发的Windows屏幕控制工具,... 目录概述功能亮点界面展示实现步骤详解1. 环境准备2. 亮度控制模块3. 息屏功能实现4. 息屏时间

Mac系统下卸载JAVA和JDK的步骤

《Mac系统下卸载JAVA和JDK的步骤》JDK是Java语言的软件开发工具包,它提供了开发和运行Java应用程序所需的工具、库和资源,:本文主要介绍Mac系统下卸载JAVA和JDK的相关资料,需... 目录1. 卸载系统自带的 Java 版本检查当前 Java 版本通过命令卸载系统 Java2. 卸载自定

在Windows上使用qemu安装ubuntu24.04服务器的详细指南

《在Windows上使用qemu安装ubuntu24.04服务器的详细指南》本文介绍了在Windows上使用QEMU安装Ubuntu24.04的全流程:安装QEMU、准备ISO镜像、创建虚拟磁盘、配置... 目录1. 安装QEMU环境2. 准备Ubuntu 24.04镜像3. 启动QEMU安装Ubuntu4

Windows下C++使用SQLitede的操作过程

《Windows下C++使用SQLitede的操作过程》本文介绍了Windows下C++使用SQLite的安装配置、CppSQLite库封装优势、核心功能(如数据库连接、事务管理)、跨平台支持及性能优... 目录Windows下C++使用SQLite1、安装2、代码示例CppSQLite:C++轻松操作SQ

C++中RAII资源获取即初始化

《C++中RAII资源获取即初始化》RAII通过构造/析构自动管理资源生命周期,确保安全释放,本文就来介绍一下C++中的RAII技术及其应用,具有一定的参考价值,感兴趣的可以了解一下... 目录一、核心原理与机制二、标准库中的RAII实现三、自定义RAII类设计原则四、常见应用场景1. 内存管理2. 文件操

C++中零拷贝的多种实现方式

《C++中零拷贝的多种实现方式》本文主要介绍了C++中零拷贝的实现示例,旨在在减少数据在内存中的不必要复制,从而提高程序性能、降低内存使用并减少CPU消耗,零拷贝技术通过多种方式实现,下面就来了解一下... 目录一、C++中零拷贝技术的核心概念二、std::string_view 简介三、std::stri

C++高效内存池实现减少动态分配开销的解决方案

《C++高效内存池实现减少动态分配开销的解决方案》C++动态内存分配存在系统调用开销、碎片化和锁竞争等性能问题,内存池通过预分配、分块管理和缓存复用解决这些问题,下面就来了解一下... 目录一、C++内存分配的性能挑战二、内存池技术的核心原理三、主流内存池实现:TCMalloc与Jemalloc1. TCM

基于Python实现一个Windows Tree命令工具

《基于Python实现一个WindowsTree命令工具》今天想要在Windows平台的CMD命令终端窗口中使用像Linux下的tree命令,打印一下目录结构层级树,然而还真有tree命令,但是发现... 目录引言实现代码使用说明可用选项示例用法功能特点添加到环境变量方法一:创建批处理文件并添加到PATH1

C++ 函数 strftime 和时间格式示例详解

《C++函数strftime和时间格式示例详解》strftime是C/C++标准库中用于格式化日期和时间的函数,定义在ctime头文件中,它将tm结构体中的时间信息转换为指定格式的字符串,是处理... 目录C++ 函数 strftipythonme 详解一、函数原型二、功能描述三、格式字符串说明四、返回值五

Windows的CMD窗口如何查看并杀死nginx进程

《Windows的CMD窗口如何查看并杀死nginx进程》:本文主要介绍Windows的CMD窗口如何查看并杀死nginx进程问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地... 目录Windows的CMD窗口查看并杀死nginx进程开启nginx查看nginx进程停止nginx服务