1.字符测试函数 不加头文件也能生效 (ascii值同效)
int isalpha(int c) :检测参数c是否为英文字母或者表示一个字母的ascii值 如果是返回真值 否则返回假
int isgraph (int c) :检测参数c是一个可打印的字符或者是ascii值 如果是返回真值 否则返回假
int islower (int c) :检测字符是不是小写字母 是返回真值 否则返回假
int isupper (int c) :检测字符是不是小写字母 是返回真值 否则返回假
int ispunct (int c) :检测字符是不是标点符号或者特殊符号 是返回真值 否则返回假
int isdigit (int c):检测是否为阿拉伯数字 是返回真值 否则返回假
其他字符测试函数
isascii 是否为ascii值 //isspace 是否为空格
2.字符串转换 需要加头文件(#include <stdlib.h>)
char a[50];a="asdfg";这种赋值是错的
char a[50]; scanf("%s",a);应该这样
atof 将字符串转换成浮点型 遇见字母停止读书 例如 12a12 输出12.000000
atoi 将字符串转换成整形数
atol 将字符串转换成长整型
ecvt 将浮点型转换成字符串
char *ecvt(double number,int ndigits,int *decpt,int *sign)
number:是一个double型的浮点数 函数需要对这个浮点数进行转换
ndigits:在浮点数中从左到右取得位数
decpt:是一个整形数的指针,显示浮点数中小数点在第几位
sign:是一个整形数的指针 代表数值的正负 如果为正返回0
函数的返回值是指向字符串的指针
转换生成的string 里面的小数点是根据decpt来放置的 在字符串里不显示
tolower toupper 转换字母的大小写
3字符串比较 头文件#include <string.h>
字符串比较函数 bcmp 用来比较两个字符串的前n个字节是否相同 如果相同则返回0值否则 返回非0值 int bcmp(const void *s1,const void *s2,int n)
*s1,*s2为要比较的两个字符串 n为比较的字节数
字符串大小比较函数 memcmp
int memcmp (const void *s1 const void *s2,size_t n)
s1比s2大 返回正值 s1比s2小 返回负值
返回的值并不一定是第一个不同的值得ascii值得差???(书上说的是 可我打出来的运行结果是-1)
strncasecmp 忽略大小写比较字符串函数
bcopy 字符串复制函数 将一个字符串的前n个值复制到另一个字符串中
void bcopy(const void *src,void *dest,int n);
src是要复制的字符串 dest要复制到的字符串 n表示字符数目
strcpy 可以将一个字符串复制到另一个字符串,函数定义
char *strcpy(char *dest,const char *src)在参数列表里 dest是复制字符串的目标指针 src为原字符串指针。函数会返回字符串dest的指针(strcpy(b,a)把a复制给b 然后返回)
strncpy 和strcpy差不多 只是多了一个参数 n可以指定要复制的字符数目
函数定义:char *strncpy(char *dest,const char *src,size _t n);