马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有账号?立即注册
×
重点:
strlen()函数\strcpy()函数\strcat实现\strcmp()实现
数组的清空:bzero函数、memset函数
一、字符数组
<1> 概念
字符数组本质上就是一个数组,生存一个个字符,也一样寻常用来生存字符串
字符串由多个字符构成的一个字符组,一样寻常用“ ”括起来
<2> 界说:char 数组名[数组长度];
<3> 初始化:
单字符全部初始化
单字符部门初始化
不填数组长度的初始化
以字符串对字符数组初始化
以字符串对字符数组初始化:不加{}
二、字符串的输入输出
<1> 字符串的输出
printf()输出: printf("%s\n",字符串首所在)
puts输出: puts(字符串首所在/字符数组名)
<2> 字符串的输入
gets()输入: gets(生存输入的字符串的空间首所在/数组名)
scanf()输入
三、对字符串的相干处理处罚函数的利用
<1> 数组清空:所谓的数组清空就是让数组中全部的成员数据全部变为0
界说数组时就初始化为0
bzero()函数
#include <strings.h>
void bzero(void *s, size_t n);
功能:实现数组的清空
参数:
s:要清空的数组首所在(数组名)
n:填写数组巨细就可以
返回值:无
ex;
bzero(数组名,sizeof(数组名));
memset()函数
void *memset(void *s, int c, size_t n);
功能:将指定的内存中数据设置为指定巨细,可以用于数组清空
6.2 strlen()函数盘算数组的长度
#include <string.h>
size_t strlen(const char *s);
功能:盘算字符串的长度,'\0'之前的字符串数量
参数:
s:要盘算长度的字符串首所在(数组名)
返回值:乐成会返回盘算到的字符串长度
6.3 strcpy()函数实现字符串的复制
char *strcpy(char *dest, const char *src);
功能:将一个字符串复制到另一个数组空间中
参数:
dest:目标空间首所在
src:要复制的字符串的首所在
返回值:函数调用乐成返回一个指向复制后字符串的首所在
ex:
char buf[]="hello world";
char buf1[20]={0};
strcpy(buf1,buf);//将buf中生存的字符串复制到buf1中
char *strncpy(char *dest, const char *src, size_t n);
功能:实现复制指定巨细的字符串
参数:
desc:生存复制后字符串的数组首所在
src:原字符串首所在
n:复制原字符串前n个字符到目标数组中
返回值:函数调用乐成返回一个指向复制后字符串的首所在
strcat实现字符串的拼接
#include <string.h>
char *strcat(char *dest, const char *src);
功能:实现两个字符串的拼接
参数:
desc:要拼接的第一个字符串首所在,也是拼接后字符串首所在
src:要拼接的第二个字符串首所在
返回值:乐成返回拼接后字符串的首所在
char *strncat(char *dest, const char *src, size_t n);
功能:实现指定长度的字符串的拼接,将src字符串前n个字符拼接到desc字符串的
背面
参数:
desc:要拼接的第一个字符串首所在,也是拼接后字符串首所在
src:要拼接的第二个字符串首所在
n:要拼接的src中字符的个数
返回值:乐成返回拼接后字符串的首所在
strcmp()实现字符串的比力
#include <string.h>
int strcmp(const char *s1, const char *s2);
功能:实现两个字符串的比力
参数:
s1:要比力的第一个字符串
s2:要比力的第二个字符串
返回值:
当两个字符串相称时,函数返回0
当s1字符串比s2字符串大,此时返回一个正整数
当s2字符串比s2字符串大,此时返回一个负整数
int strncmp(const char *s1, const char *s2, size_t n);
功能:举行两个字符串前n个字符的比力
参数:
s1:要比力的第一个字符串
s2:要比力的第2个字符串
n:要比力两个字符串前n个字符
返回值:
当两个字符串相称时,函数返回0
当s1字符串比s2字符串大,此时返回一个正整数
当s2字符串比s2字符串大,此时返回一个负整数
二、二维字符数组
<1> 概念:本质就是一个二维数组
<2> 初始化
只讨论生存字符串时的初始化;
char 数组名[行数][列数]={“字符串1”,“字符串2”,......}
<3> 输出:输出各行的方法:以字符串情势输出,以下标代表各行:
name[0]:第0行内容
name[2]:第1行内容
name[3]:第3行内容
三、指针
<1> 指针就是所在
<2> 界说 数据范例* 指针变量名
<3> 初始化
NULL
int *p=&a 存入某个所在
int *p=q: 另一个指针变量给其初始化
<4> 空指针和野指针
空指针:用NULL初始化的指针
野指针:没初始化的指针为野指针;严峻可导致步伐瓦解;应克制野指针的出现
<5> 通过指针访问变量的数据
在除了界说指针情况外,再次利用*,表现该指针指向内存的数据
<6> 指针的巨细
32位体系中,指针为4字节;64位体系中,指针为8字节巨细
|