日期:2014-05-16  浏览次数:20621 次

linux下练习 gcc 静态库/动态库 编译示例

//iotool.c

#include <stdio.h>
int inputInt(const char *info)
{
	int r;
	printf("%s:",info);
	scanf("%d",&r);
	return r;
}


graphic.c

#include <stdio.h>
void diamond(int r)
{
	int x,y;
	for(y=0;y<=2*r;y++)
	{
		for(x=0;x<=2*r;x++)
		{
			if(y==x+r  || y==x-r 
			|| y==-x+r || y==-x+3*r)
			{
				printf("*");
			}
			else
			{
				printf(" ");
			}
		}
		printf("\n");
	}
}


//callgra.c

#include<stdio.h>
main()
{
	int r=inputInt("半径");
	diamond(r);
}


编译和运行:

 

 

 

 

附:

ar -r libdemo1.a l1.o l2.o  //标准命名:lib+名称+.a
gcc main.c -l demo1 -L .    //编译使用:gcc c文件 -l 名称 -L 路径

 

动态库: