#include<stdio.h>
#include<string.h>
int str_len(char *ch);//字符串长度
char *str_cpy(char *dst,char const *str);//复制字符串
void str_cat(char *dst,char const *src);//连接字符串
int str_cmp(char const *s1,char const *s2);//连接字符串
char *str_chr(char const *str,int ch);//查找一个字符
char *str_rchr(char const *str,int ch);
char *str_str(char const *s1,char const *s2);//查找一个子串
void str_tok();
void print_tokens(char *line);
int main(void)
{
char ch[][20]={
"abcdefgh",
"ABCDEFGHIJK"
};
int len;
char cha[10],*chr=cha;
char ch1[]="opqr";
printf("%s\n",ch);
printf("%s\n",ch+1);
len=str_len(ch+1);
printf("%d\n\n",len);
chr=str_cpy(ch,ch+1);
printf("%s\n%s\n%s\n\n",chr,ch,ch+1);
strcpy(ch,"abcdefgh");
str_cat(ch,ch1);
printf("%s\n\n",ch);
strcpy(ch,"abcdefgh");
len=str_cmp("es","fn");
printf("%d\n\n",len);
strcpy(ch,"abcddefafgah");
chr=str_chr(ch,'d');
printf("%s\n\n",chr);
chr=str_rchr(ch,'a');
printf("%s\n\n",chr);
chr=strstr(ch,"de");
printf("%s\n\n",chr);
len=strspn(ch,"ajbdc");
printf("%d\n\n",len);
len=strcspn(ch,"dc");
printf("%d\n\n",len);
strcpy(ch,"abcefghijkd");
printf("%s\n",ch);
chr=strtok(ch,"acdhj");
printf("%s\n",ch);
printf("%s\n\n",chr);
str_tok();
print_tokens(ch);
return 0;
}
//字符串长度
int str_len(char *ch)
{
printf("%s\n",ch);
return strlen(ch);
}
//复制字符串
char *str_cpy(char *dst,char const *str)
{
return strcpy(dst,str);
}
//连接字符串
void str_cat(char *dst,char const *src)
{
strcat(dst,src);
}
//连接字符串
int str_cmp(char const *s1,char const *s2)
{
return strcmp(s1,s2);
}
//查找一个字符
char *str_chr(char const *str,int ch)
{
return strchr(str,ch);
}
//查找一个字符
char *str_rchr(char const *str,int ch)
{
return strrchr(str,ch);
}
//查找一个子串
char *str_str(char const *s1,char const *s2)
{
return strstr(s1,s2);
}
void str_tok()
{
char s[] = "aaa bbb ccc ddd";
char c[] = " ";
char *r = strtok(s, c);
printf("%s\n", r);
while (r != NULL) {
printf("%s\n", r);
r = strtok(NULL, c);
}
}
void print_tokens(char *line)
{
static char whitespace[]=" \t\f\r\v\n";
char *token;
for(token=strtok(line,whitespace);
token!=NULL;token=strtok(NULL,whitespace))
printf("Netct token is %s\n",token);
}
#include<string.h>
int str_len(char *ch);//字符串长度
char *str_cpy(char *dst,char const *str);//复制字符串
void str_cat(char *dst,char const *src);//连接字符串
int str_cmp(char const *s1,char const *s2);//连接字符串
char *str_chr(char const *str,int ch);//查找一个字符
char *str_rchr(char const *str,int ch);
char *str_str(char const *s1,char const *s2);//查找一个子串
void str_tok();
void print_tokens(char *line);
int main(void)
{
char ch[][20]={
"abcdefgh",
"ABCDEFGHIJK"
};
int len;
char cha[10],*chr=cha;
char ch1[]="opqr";
printf("%s\n",ch);
printf("%s\n",ch+1);
len=str_len(ch+1);
printf("%d\n\n",len);
chr=str_cpy(ch,ch+1);
printf("%s\n%s\n%s\n\n",chr,ch,ch+1);
strcpy(ch,"abcdefgh");
str_cat(ch,ch1);
printf("%s\n\n",ch);
strcpy(ch,"abcdefgh");
len=str_cmp("es","fn");
printf("%d\n\n",len);
strcpy(ch,"abcddefafgah");
chr=str_chr(ch,'d');
printf("%s\n\n",chr);
chr=str_rchr(ch,'a');
printf("%s\n\n",chr);
chr=strstr(ch,"de");
printf("%s\n\n",chr);
len=strspn(ch,"ajbdc");
printf("%d\n\n",len);
len=strcspn(ch,"dc");
printf("%d\n\n",len);
strcpy(ch,"abcefghijkd");
printf("%s\n",ch);
chr=strtok(ch,"acdhj");
printf("%s\n",ch);
printf("%s\n\n",chr);
str_tok();
print_tokens(ch);
return 0;
}
//字符串长度
int str_len(char *ch)
{
printf("%s\n",ch);
return strlen(ch);
}
//复制字符串
char *str_cpy(char *dst,char const *str)
{
return strcpy(dst,str);
}
//连接字符串
void str_cat(char *dst,char const *src)
{
strcat(dst,src);
}
//连接字符串
int str_cmp(char const *s1,char const *s2)
{
return strcmp(s1,s2);
}
//查找一个字符
char *str_chr(char const *str,int ch)
{
return strchr(str,ch);
}
//查找一个字符
char *str_rchr(char const *str,int ch)
{
return strrchr(str,ch);
}
//查找一个子串
char *str_str(char const *s1,char const *s2)
{
return strstr(s1,s2);
}
void str_tok()
{
char s[] = "aaa bbb ccc ddd";
char c[] = " ";
char *r = strtok(s, c);
printf("%s\n", r);
while (r != NULL) {
printf("%s\n", r);
r = strtok(NULL, c);
}
}
void print_tokens(char *line)
{
static char whitespace[]=" \t\f\r\v\n";
char *token;
for(token=strtok(line,whitespace);
token!=NULL;token=strtok(NULL,whitespace))
printf("Netct token is %s\n",token);
}