学习起步之初,先用最基础的命令行工具进行学习
这个是在VS2019下进行配置的,位置和你安装IDE的位置有关
- MSVC
- D:\VS2019\IDE\VC\Tools\MSVC\14.29.30133
-
- WK10_INCLUDE
- C:\Program Files (x86)\Windows Kits\10\Include\10.0.19041.0
-
- WK10_LIB
- C:\Program Files (x86)\Windows Kits\10\Lib\10.0.19041.0
-
- WK10_BIN
- C:\Program Files (x86)\Windows Kits\10\bin\10.0.19041.0
-
- INCLUDE
- %WK10_INCLUDE%\ucrt;%WK10_INCLUDE%\um;%WK10_INCLUDE%\shared;%MSVC%\include;
-
- LIB
- %WK10_LIB%\um\x64;%WK10_LIB%\ucrt\x64;%MSVC%\lib\x64;
-
-
- Path下新增
- %MSVC%\bin\HostX64\x64
- %WK10_BIN%\x64
验证环境配置
说明:
执行下面的命令,会产生一个obj文件,存储了c代码的机器代码以及所需的数据支撑和代码支撑
- cl /c Hello.c
这个obj文件不能直接运行,只是高级语言转化为低级语言,而且是可以跨语言的,不能跨平台。
obj文件不能直接执行,虽然里面包含的是机器代码,要想执行需要和操作系统约定,比如:代码执行位置,数据执行位置,程序的入口
另外编译器有严格审查机制,可以设置,从1-4,从弱到强、
- cl /c /W(1-4) /P Hello.c
查看替换之后结果,会生成一个.i的文件,W4最高检查标准
- cl /c /W4 /P Hello.c
打开Hello.c
这个文件就是把include,宏给替换之后的结果,还未编译
抽取代码以及数据,打造为当前平台的可执行程序
link命令用于将目标文件、库文件和其他资源文件链接在一起生成可执行文件、动态链接库(DLL)或静态库。你可以使用link命令将名为Hello.obj的目标文件链接为可执行文件。
- link Hello.obj
原来的obj也就3kb,经过打包后直接犯了40倍,生成Windows平台的可执行文件
发现winodws平台对大小写其实是不敏感的