前言:
现在姐妹们对“c语言中文件的字符串输入函数是”大致比较关切,看官们都需要分析一些“c语言中文件的字符串输入函数是”的相关内容。那么小编同时在网上汇集了一些关于“c语言中文件的字符串输入函数是””的相关资讯,希望我们能喜欢,看官们快快来了解一下吧!1.追加字符串
#include<stdio.h>
#include <time.h>
#include <Windows.h>
int main()
{
char ch1[100]="hello00or";//被追加提供足够多的容量
char ch2[]=" woddrwe";//要追加的数据
strcat(ch1,ch2);//追加字符串
printf("%s\n",ch1);
system("pause");
return 0;
}
(1)自己写一个strcat
#include<stdio.h>
#include <time.h>
#include <Windows.h>
void my_strcat(char* ch1,char* ch2)
{
while(*ch1)*ch1++;
while(*ch1++=*ch2++);
}
int main()
{
char ch1[100]="hello00or";
char ch2[]=" woddrwe";
my_strcat(ch1,ch2);
printf("%s\n",ch1);
system("pause");
return 0;
}
2查找字符串
#include<stdio.h>
#include <time.h>
#include <Windows.h>
char* my_find(char* src,char* dest)//传入源数据,查找数据
{
char* fsrc=src;//源数据要遍历的指针
char* rsc=src;//记录相同数据的指针
char* tdest=dest;//要查找数据指针
while (*fsrc)
{
rsc=fsrc;//记录初始数据
while (*fsrc==*tdest&&tdest!=0)//查找数据不为\0
{
fsrc++;//遍历源数据
tdest++;//遍历记录数据
}
if (*tdest==0)//遍历所有要查找的数据
{
return rsc;//返回查找的数据
}
tdest=dest;//没有找到相同数据,要查找数据重新到第一个位置
fsrc=rsc;//源数据要遍历的位置回到记录的数据处
fsrc++;
}
return NULL;
}
int main()
{
char ch1[100]="hello00or";
char ch2[]="re";
char* p=my_find(ch1,ch2);
printf("%s\n",p);
system("pause");
return 0;
}
3.比较字符串
#include<stdio.h>
#include <time.h>
#include <Windows.h>
int main()
{
char ch1[100]="hello00or";
char ch2[]="re";
int value=strcmp(ch1,ch2);//比较字符串是否相等返回int型0为相同,其它不同
strcmp(ch1,ch2,n)//比较前n个字符
printf("%d\n",value);
system("pause");
return 0;
}
(2)定义自己的比较字符串(程序有点问题)
#include<stdio.h>
#include <time.h>
#include <Windows.h>
int my_strcmp(char* ch1,char*ch2)
{
while(*ch1==*ch2)
{
if(!*ch1)
return 0;
ch1++;
ch2++;
}
return *ch1>*ch2 ? 1:-1;
}
int main()
{
char ch1[100]="hell\0o00or";
char ch2[]="he";
int value=my_strcmp(ch1,ch2);
printf("%d\n",value);
system("pause");
return 0;
}
4.sprintf写入字符串
#include<stdio.h>
#include <time.h>
#include <Windows.h>
int main()
{
char ch1[100];
sprintf(ch1,"hello world");//格式化操作
printf("%s\n",ch1);
system("pause");
return 0;
}
5.sscanf(读取字符串)
#include<stdio.h>
#include <time.h>
#include <Windows.h>
int main()
{
char ch1[]="hello world";
char ch2[20];
sscanf(ch1,"%[^\n]",ch2);//格式化操作
printf("%s\n",ch2);
system("pause");
return 0;
}
6strchr//查找字符出现的位置
#include<stdio.h>
#include <time.h>
#include <Windows.h>
int main()
{
char ch1[]="hello world";
char ch2='l';
char* value=strchr(ch1,ch2);
printf("%s\n",value);
system("pause");
return 0;
}
(2)自己写一个算法查找字符
#include<stdio.h>
#include <time.h>
#include <Windows.h>
char* my_strchr(char* s,char c)
{
while(*s)
{
if(*s==c)
return s;
s++;
}
return NULL;
}
int main()
{
char ch1[]="hello world";
char ch2='l';
char* value=my_strchr(ch1,ch2);
printf("%s\n",value);
system("pause");
return 0;
}
7.strstr字符串中查找字符串的位置
#include<stdio.h>
#include <time.h>
#include <Windows.h>
int main()
{
char ch1[]="hello world";
char ch2[]="llo";
char* value=strstr(ch1,ch2);
printf("%s\n",value);
system("pause");
return 0;
}
8.字符串分割
#include<stdio.h>
#include <time.h>
#include <Windows.h>
int main()
{
char ch1[]=";;
char* p=strtok(ch1,".");//字符串分割
p=strtok(NULL,".");//指针指向空,第二次分割
p=strtok(NULL,".");
printf("%s\n",p);
system("pause");
return 0;
}
(2)字符串多次分割
#include<stdio.h>
#include <time.h>
#include <Windows.h>
int main()
{
char ch1[]=";;
char* p=strtok(ch1,".");//字符串分割
while(p)
{
printf("%s\n",p);
p=strtok(NULL,".");
}
system("pause");
return 0;
}
9.字符串atoi转换成整型(atof,atol用法相似)
#include<stdio.h>
#include <time.h>
#include <Windows.h>
int main()
{
char ch1[]="1233";
int p=atoi(ch1);//字符串转化为整形
//可以以空格开始识别sscanf用法相似
printf("%d\n",p);
system("pause");
return 0;
}
标签: #c语言中文件的字符串输入函数是