GCC的一些简单使用方法
gcc -g -Wall hello_world.c -o hello_world 这个命令是一步到位,直接得到可执行文件
gcc -E hello_world.c >hello_world.i 得到预编译结果
gcc - S hello_world.c -o hello_world.s 得到汇编
gcc -c(小写) hello_world.c -o hello.o 生成目标文件,得不进行链接
strace hello_world strace是linux中的命令, 这样能跟踪hello world的执行过程,
/usr/include 目录下有各种头文件,包含stdio.h等
#include <pthread.h>
#include <stdio.h>
#include <stdlib.h>
#define LOOPS 100000
static int counter=0;
static void *thread(void *unused)
{
int i;
for(i=0;i<LOOPS; ++i){
++counter;
}
return NULL;
}
int main (void)
{
pthread t1,t2;
pthread_create(&t1,NULL,thread,NULL);
pthread_create(&t2,NULL,thread,NULL);
pthread_join(t1,NULL);
pthread_join(t2,NULL);
printf("Counter is %d by threads \n", counter(;
return 0;
}
编译命令如下 gcc -g -Wall thread.c -o thred -lpthread