任务描述:
头文件中包含相应的库函数的函数申明。可以#include用来引入对应的头文件(.h文件)。其实,我们可以编写自己的函数库和相应的头文件。这就是C语言中的多文件编程。请查询书籍文献和网络资源编写自己的字符串函数库,并使用自己的头文件编写样例程序。其中至少包括 strcat,strcmp,strlen,strcpy,strlwr,strupr等函数功能,并自行编码实现,不得直接封装原来库函数
1.先声明。
#ifndef MYSTRING_H
#define MYSTRING_H
#include<stdio.h>
//在.h后缀文件里声明
char *strcat(char *a,char *b);
int strcmp(char *a,char *p);
int strlen(char *a);
void *strcpy(char *a,char *b);
void *strlwr(char *a);
void *strupr(char *a);
#endif
。2.封装。
#include <stdio.h>
#include "mystring.h"//这里必须要写,而且必须是双引号。
//在mystring.c文件里封装。
char *strcat(char *a,char *b){
char *p=a;
int i;
while(*a!='\0'){
a++;
}
for(a;*b!='\0';a++,b++){
*a=*b;
}
*a='\0';
return p;
}
int strcmp(char *a,char *b){
for(a;;a++,b++){
if(*a>*b)return 1;
else if(*a<*b) return -1;
else if(*a=='\0') return 0;
}
}
int strlen(char *a){
int sum=0;
while(*a!='\0'){
sum++;
a++;
}
return sum;
}
void *strcpy(char *a,char *b){
for(;*b!='\0';a++,b++){
*b=*a;
}
*a='\0';
}
void *strlwr(char *a){
for(;*a!='\0';a++){
if(*a>='A'&&*a<='Z'){
*a+=32;
}
}
}
void *strupr(char *a){
for(;*a!='\0';a++){
if(*a>='a'&&*a<='z'){
*a-=32;
}
}
}
3.在main.c文件里引用#include"mystring.h"即可。
|