zoukankan      html  css  js  c++  java
  • C语言常用字符串函数

    string.h头文件中常用的函数

    C 库函数 - strcat()

    char *strcat(char *dest, const char *src)

    把 src 所指向的字符串追加到 dest 所指向的字符串的结尾

    //演示 strcat() 函数的用法
    	char str1[100];
    	char str2[100];
    	
    	gets(str1);	//输入abcd
    	strcat(str1, "efg");  
    	  
    	//或者也可以这样写
    	//gets(str2);	//输入efg
    	//strcat(str1, str2);
    

    打印出的结果是abcdefg
    返回值:该函数返回一个指向最终的目标字符串 dest 的指针

    C 库函数 - strcpy()

    char *strcpy(char *dest, const char *src)

    把 src 所指向的字符串复制到 dest

    //演示 strcpy() 函数的用法
    	char str1[100]char str2[100];
    	
    	strcpy(str1, "abcd");	//用于字符串的输入
    	strcpy(str2, str1);	//或字符串的拷贝
    

    打印出的结果是abcd
    返回值:该函数返回一个指向最终的目标字符串 dest 的指针

    C 库函数 - strcmp()

    int strcmp(const char *str1, const char *str2)

    把 str1 所指向的字符串和 str2 所指向的字符串进行比较

    //演示 strcpy() 函数的用法
    	char str1[100];
    	char  str2[100];
    		int flg; //记录strcmp()的返回值
    	
    		strcpy(str1, "abc");	//输入abc
    		strcpy(str2, "xyz");	//输入xyz
    		
    	flg=strcmp(str1, str2);	//以ASCALL码比较
    	
    		if(flg > 0)
    				printf("str1 > str2");
    		else if(flg < 0)
    				printf("str1 < str2");
    		else if(flg == 0)
    				printf("str1 = str2");
    

    打印出的结果是str1 < str2
    返回值:

    • 如果返回值 < 0,则表示 str1 小于 str2
    • 如果返回值 > 0,则表示 str2 小于 str1
    • 如果返回值 = 0,则表示 str1 等于 str2

    C 库函数 - strlen()

    size_t strlen(const char *str)

    计算字符串 str 的长度,直到空结束字符,但不包括空结束字符
    其中size_t 这是无符号整数类型,它是 sizeof 关键字的结果

    //演示 strlen() 函数的用法
    	char str[100];
    	int l;	//记录字符串长度
    	
    	strcpy(str,"abcd");	//输入abcd
    	l=strlen(str);
    

    打印出的结果是4
    返回值:该函数返回字符串的长度
    c库函数- memset()

    void *memset(void *str, int c, size_t n)

    复制字符 c(一个无符号字符)到参数 str 所指向的字符串的前 n 个字符,通常用作批量赋值。

    //演示 strlen() 函数的用法
    	char str[10]={''};//全部初始化为0
    	int arr[10]={1,1,1,1,1,1,1,1,1,1};//全部初始化为1
    	
    	memset(str,'a',5);//5*sizeof(char)	//前5个值赋值为a
    	memset(str,'a',sizeof(str)-1);	   //所有值赋值为a //‘’结尾
    	
    	memset(arr,0,5*sizeof(int)); //前5个值赋值为0;
    	memset(arr,0,sizeof(arr));  //所有值赋值为0;
    	
    		//注:第三个参数为赋值的字节数
    		//sizeof(数组名)为所有值,sizeof(类型)为一个值
    		//对数组来说,只能初始化为0,或者-1
    

    打印出的结果是

    //aaaaa
    //aaaaaaaaa
    //0 0 0 0 0 1 1 1 1 1
    //0 0 0 0 0 0 0 0 0 0
    

    返回值:该值返回一个指向存储区 str 的指针

    扩展:

    C 库函数 - memcpy()C 库函数memcpy()

    void *memcpy(void *str1, const void *str2, size_t n)

    从存储区 str2 复制 n 个字符到存储区 str1.
    str2可从任意成员处开始,如memcpy(str1,str2+3, 6);// 从第 3 个字符开始复制,连续复制 6 个字符
    返回值: 该函数返回一个指向目标存储区 str1 的指针

    C 库函数 - memcmp(): C 库函数 - memcmp()

    int memcmp(const void *str1, const void *str2, size_t n)

    把存储区 str1 和存储区 str2 的前 n 个字节进行比较
    返回值:

    • 如果返回值 < 0,则表示 str1 小于 str2
    • 如果返回值 > 0,则表示 str2 小于 str1
    • 如果返回值 = 0,则表示str1 等于 str2

    以上为一些string.h头文件中常用的函数,资料来自菜鸟驿站C 标准库 - <string.h>

  • 相关阅读:
    C# 打印多页tif
    页面动态加载js文件
    CPrintDialog 构造函数参数详解
    DEVMODE 结构体
    对C#对象的Shallow、Deep Cloning认识【转】
    PowerShell 启动应用程序【转】
    中文网页的字体
    css3自适应布局单位vw,vh你知道多少?
    微信小程序轮播图宽高计算
    更改wordpress的默认登录页面名称wp-login
  • 原文地址:https://www.cnblogs.com/TaoR320/p/12680223.html
Copyright © 2011-2022 走看看