$ gcc helloworld.c -o helloworld.o
helloworld.c 是編譯前的原始檔
helloworld.o 是編譯後的執行醠
-o 是 output 的意思
No Message is a good message.
若無錯誤訊息則會產生一個helloworld.o
執行
./helloworld.c
//Output: Hello World
gcc -S helloworld.c
此參數會產生一個helloworld.S
裡面則會記錄變異過程的Log
.section __TEXT,__text,regular,pure_instructions
.macosx_version_min 10, 12
.globl _main
.align 4, 0x90
_main: ## @main
.cfi_startproc
## BB#0:
pushq %rbp
Ltmp0:
.cfi_def_cfa_offset 16
Ltmp1:
.cfi_offset %rbp, -16
movq %rsp, %rbp
Ltmp2:
.cfi_def_cfa_register %rbp
subq $16, %rsp
leaq L_.str(%rip), %rdi
movl $0, -4(%rbp)
movb $0, %al
callq _printf
xorl %ecx, %ecx
movl %eax, -8(%rbp) ## 4-byte Spill
movl %ecx, %eax
addq $16, %rsp
popq %rbp
retq
.cfi_endproc
.section __TEXT,__cstring,cstring_literals
L_.str: ## @.str
.asciz "Hello, World!"
.subsections_via_symbols
每次寫完程式之後都要開啟Terminal去執行指令
感覺就很麻煩
所以我們安裝一下 Code Runner
再修改setting.json 增加下列的值
{
"code-runner.executorMap":{
"javascript": "node",
"c": "gcc $fullFileName -o $dir/$fileNameWithoutExt && $dir/$fileNameWithoutExt"
},
}
設定完成之後
day01/example.c
#include <stdio.h>
void main()
{
printf("Hello, World!");
}
F1
打開指令輸入匡Run Code
執行結果
這樣就可以基本的build出一個執行檔
並且秀出執行結果