Linux静态/动态链接库的创建和使用
和
Windows系统一样Linux也有静态/动态链接库,下面介绍创建和使用方法:
假设有下面几个文件:
头文件String.h,声明相关函数原形,内容如下:
Strlen.c:
函数Strlen的实现,获取给定字符串的长度,内容如下:
Strlnen.c:函数
StrNlen的实现,获取给定字符串的长度,如果输入字符串的长度大于指定的最大长度,则返回最大长度,否者返回字符串的实际长度,内容如下:
生
成静态库:
利用GCC生成对应目标文件:
gcc –c Strlen.c Strnlen.c
如果对应的文件没有错误,gcc
会对文件进行编译生成Strlen.o和Strnlen.o两个目标文件(相当于windows下的obj文件)。然后用ar创建一个名字为
libstr.a的库文件,并把Strlen.o 和Strnlen.o的内容插入到对应的库文件中。,相关命令如下:
ar –rc
libstr.a Strlen.o Strnlen.o
命令执行成功以后,对应的静态库libstr.a已经成功生成。
/***********************************
Filename : String.h
Description
:
Author : HCJ
Date : 2006-5-7
************************************/
int Strlen(char *pStr);
int StrNlen(char *pStr, unsigned long
ulMaxLen);
/**************************************
Filename : get string
length
Description :
Author : HCJ
Date : 2006/5/7
**************************************/
#include<stdio.h>
#include<assert.h>
int Strlen(char *pStr)
{
unsigned long ulLength;
assert(NULL != pStr);
ulLength = 0;
while(*pStr++)
{
ulLength++;
}
return ulLength;
}
**********************************************
Fileneme:
mystrnlen.c
Description: get input string length,if string large
max length input return max length,
else real length
Author:
HCJ
Date 
相关文档:
MySQL(root用户)密码忘记重置
分别在Windows下和Linux下重置了MYSQL的root的密码,整理如下:
A:在windows下:
1:进入cmd,停止mysql服务:Net stop mysql
到mysql的安装路径启动mysql,在bin目录下使用mysqld-nt.exe启动,
2:执行:mysqld-nt --skip-grant-tables(窗口会一直停止 ......
LINUX 命令大全
Linux虽然是免费的,但它的确是一个非常优秀的操作系统,与MS-WINDOWS相比具有可
靠、 稳定、速度快等优点,且拥有丰富的根据UNIX版本改进的强大功能。下面,作为一
个典型的DOS 和WINDOWS用户,让我们一起来学习Linux的一些主要命令,希望大家能尽
快进入到Linux的世界里。
一、启动
......
下面以配置java
环境变量为例介绍三种配置环境变量的方法。
1.修改/etc/profile文件
如果你的计算机仅仅作为开发使用时推荐使用这种方法,因为所有用户
的shell
都有权使用这些环境变量,可能
会给系统
带来安全性问题。
(1)用文本编辑器打开/etc/profile
(2)在profile文件末尾加入:
JA ......
windows(dos)下的换行符 和 linux (ubuntu)下的换行符是不同的。
在涉及到DOS下的文本 在LINUX下 操作时,就涉及到换行符不同带来的麻烦。
,在DOS使用的换行符为 ^M$,我们称为CR与LF两个符号。而在Linux中,则仅有LF ($) 这个换行符。这个换行符对于
Linux的影响很大。
我们说过,在开始执行Linux命令时,它的判断依
......
Linux开机过程理解
一. Power on
二. BIOS加电自检:
1. 检测所有周边硬件
2. 寻找启动的磁盘(cd-rom,floppy,IDE HDD,usb device等)
三. & ......