概述
字符串标准处理函数介绍(string.h)、指针和数组当做函数形参,指针定义、函数返回指针、void类型定义指针、类型强制转换、常量声明、extern外边引用声明关键字。
1. 总结字符串相关的处理函数
string.h里常用的字符串处理相关函数。
字符串: string.h
void *memcpy(void *restrict, const void *restrict, size_t);
int memcmp(const void *, const void *, size_t);
void *memset(void *, int, size_t);
char *strcat(char *restrict, const char *restrict);
int strcmp(const char *, const char *);
char *strcpy(char *restrict, const char *restrict);
size_t strlen(const char *);
char *strncat(char *restrict, const char *restrict, size_t);
int strncmp(const char *, const char *, size_t);
char *strncpy(char *restrict, const char *restrict, size_t);
char *strstr(const char *, const char *);
格式化打印(转换)函数:
int sprintf(char *str, const char *format, ...);
int snprintf(char *str, size_t size, const char *format, ...);
int sscanf(const char *str, const char *format, ...);
说明: char p; // a=aa; //乘法 char *p; //定义指针
指针用于代表一个地址。
指针可以当做数组使用,数组无法当做指针使用。
数组的名称: 就是首地址
在C语言里任何类型的指针(地址)是4个字节
2. 函数参数: 指针与数组类型
函数的形参: 指针类型与数组类型
示例代码: ()
#include <stdio.h> //标准输入输出
#include <string.h> //字符串处理头文件
int my_strlen1(char buff[]);
int my_strlen2(char *buff);
int main(int argc,char **argv)
{
char str[]="1234567890";
int len1=my_strlen1(str);
int len2=my_strlen2(str);
printf("%dn",len1);
printf("%dn",len2);
return 0;
}
/*
函数功能:计算字符串的长度
char buff[] :传入是数组类型,也就是传入的是地址
*/
int my_strlen1(char buff[])
{
int cnt=0;
while(buff[cnt]!='