10 在macos中使用gcc和g++
Part 1、检测clang的存在
clang是macOS下的C/C++编译器。如果你的系统中安装了XCode,那么一般都自带了clang。可以这样来验证一下。
启动一个终端,在其中发出如下命令:
clang -v
如果没有报错,且显示出了版本号,那么说明clang已经存在了。
如果没有,你可能需要先安装XCode。
Part 2、安装VS Code
从微软官网下载适合macOS的VS Code版本进行安装。
clang安装好后,打开终端,发出如下命令:
cd /usr/local/bin
sudo ln -s /usr/bin/clang clang
sudo ln -s /usr/bin/clang++ clang++
Part 3、编译链接运行程序
假设你将源文件都存放在/usr/local/tmp目录中。即这是你的工作目录。
-
启动
VS Code,点击左上角的文件图标,在点击打开文件夹按钮,选择你的工作目录,然后确定。 -
在弹出的对话框中,勾选“信任xxx文件的作者…”,再点击下方的“是的,我信任作者”按按钮。此后,改文件夹里面的所有文件就会列在
VS Code的左侧栏中。 - 选择一个已有的,或者新建源文件编辑,保存为
.c文件。新建过程是这样的:按CTRL+N新建一个文件,然后在其中输入一段程序代码,例如:#include <stdio.h> int main() { printf("Hello!\n"); return 0; }然后按
CTRL+S,保存为f.c。注意,不要将其保存到.vscode子目录中! -
按组合建CTRL+`(`键在键盘左上角
ESC键的下方),调出VS Code内嵌的终端。可以看到,终端已自动进入到你的工作文件夹。 - 在终端中发出如下命令编译链接程序:
clang f.c如果无错则会生成可执行文件
a.out(这是系统默认的名字)。按如下方法运行这个程序:./a.out如果需要指定生成可执行文件的名字,那么请这么做: 或者
clang f.c -o myapp那么生成的可执行文件的名字就是
myapp。按如下方法运行这个程序:./myapp如果你的程序使用了数组、指针等容易出现内存访问错误的机制,那么可以这么做:
clang f.c -fsanitize=address这将启动内存消毒器机制,可以在程序运行时诊断处内存访问错误。根据错误提示可以定位源代码中的逻辑错误。