string.h中常用函数



char * strchr(char * str ,char ch);

从字符串str中查找首次出现字符ch的位置,若存在返回查找后的地址,若不存在则返回NULL

  1. void main(){
  2. char a[100]="abcdefg";
  3. printf("%o\n",strchr(a,'f')); //返回字符f的地址
  4. printf("%d\n",strchr(a,'f')-a); //返回字符f在字符串中的下标
  5. }



char * strstr(char * str ,char *str2);

在字符串str中查找首次出现子串str2的位置,若存在返回查找后的地址,若不存在返回NULL

  1. void main(){
  2. char a[100]="abcdefg";
  3. printf("%o\n",strstr(a,"defg")); //查找是否包含“defg”, 若存在返回子串的地址
  4. printf("%o\n",strstr(a,"1234")); //查找是否包含“1234”,不存在返回NULL
  5. printf("%d\n",strstr(a,"defg")-a); //返回字串第一个字符在源字符串中的下标
  6. }

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

将字符串str1和str2中的各个字符按照ASCII依次比较大小,直到出现不同字符或者'\0'时为止,返回值(1)当str1出现小于str2的字符时,返回值为-1。(2)当str1出现大于str2的字符时,返回值为1。(3)当str1与str2两个字符串完全相同,则返回0。

  1. void main(){
  2. char a[100]="ABCD";
  3. char b[100]="ABAB";
  4. char c[100]="ABcd";
  5. char d[100]="ABCD";
  6. printf("%d\n",strcmp(a,b)); //"ABCD"与"ABAB"比较C比A大,所以返回1
  7. printf("%d\n",strcmp(a,c)); //"ABCD"与"ABcd"比较C比c小,所以返回-1
  8. printf("%d\n",strcmp(a,d)); //两者完全相同所以返回0
  9. }

char * strrev(char * str); 

颠倒字符串str,并返回颠倒后的字符串地址。

  1. void main(){
  2. char a[100]="abcdefg";
  3. printf("%s\n",strrev(a));
  4. }

int strlen(char * str);

求字符串str的长度,不包括'\0'

char * strcat(char * des ,char *src);

将src字符串连接到des字符串的后面,并返回des字符串的首地址。连接前src和des后面都有'\0',连接时将des后面的'\0'取消掉,保留新串后面的'\0'

  1. void main(){
  2. char a[100]="abcd";
  3. char b[100]="1234";
  4. printf("%s\n",strcat(a,b)); //将“1234”连接到"abcd"后面
  5. }

char * strcpy(char *des,char *src);

将src字符串复制到des字符串中(包括'\0''),并返回des字符串的首地址。des的字符串要足够长。

  1. void main(){
  2. char a[100]="abcdefghi";
  3. char b[100]="1234";
  4. printf("%s\n",strcpy(a,b)); //将"1234"复制到"abcdefghi"中
  5. }

char *strlwr(char *str);

将字符串str中的大写字母转换成小写,不改变其他字符。返回转换后的字符串首地址

  1. void main(){
  2. char a[100]="ABCD";
  3. printf("%s\n",strlwr(a));
  4. }

char *strupr(char *str);

将字符串str中的小写字母转换成大写,不改变其他字符。返回转换后的字符串首地址

  1. void main(){
  2. char a[100]="abcd";
  3. printf("%s\n",strupr(a));
  4. }

函数名中出现‘n'的情形:表示对字符串前n个字符进行处理

int strncmp(char *str1 ,char * str2,int n);

将字符串str2中的前n个字符与字符串str1进行比较,直到首次出现不同字符或者'\0'时为止,若n大于str2的长度,则相当于strcmp(str1,str2)

  1. void main(){
  2. char a[100]="abcd";
  3. char b[100]="abcdefg";
  4. printf("%d\n",strcmp(a,b)); //"abcd"小于"abcdefg"
  5. printf("%d\n",strncmp(a,b,4)); //"abcd"与"abcdefg"的前4个字符"abcd"比较
  6. }

char * strncpy(char *des ,char *src , int n);

将src中的前n个字符复制到字符串或字符数组中(不自动加'\0')。若n大于src字符的长度,则复制整个src

  1. void main(){
  2. char a[100]="abcdefg";
  3. char b[100]="1234";
  4. //printf("%s\n",strncpy(a,b,3)); // 123defg
  5. //printf("%s\n",strncpy(a,b,4)); // 1234efg
  6. //printf("%s\n",strncpy(a,b,5)); // 1234 ,相当于strcpy(a,b)
  7. }

char * strncat(char *des ,char *src , int n);

将src中的前n个字符连接到des字符串中并在末尾加上'\0',若n大于src的长度,则连接整个src

  1. void main(){
  2. char a[100]="abcdefg";
  3. char b[100]="1234";
  4. //printf("%s\n",strncat(a,b,2)); // abcdefg12
  5. //printf("%s\n",strncat(a,b,4)); // abcdefg1234
  6. //printf("%s\n",strncat(a,b,5)); // abcdefg1234
  7. }

函数名中出现‘i'的情形:表示忽略大小写

int stricmp(char * str1,char *str2);

功能同strcmp,但忽略大小写

  1. void main(){
  2. char a[100]="abcd";
  3. char b[100]="ABCD";
  4. printf("%d\n",strcmp(a,b)); //正常比较
  5. printf("%d\n",stricmp(a,b)); //忽略大小写比较
  6. }

函数名中同时出现'n'和'i':表示对字符串前n个字符,进行忽略大小写的处理

int strnicmp(char * str1 ,char *str2);

将字符串str2中的前n个字符与字符串str1进行不区分大小写的比较,直到首次出现不同字符或者'\0'时为止。

ctype.h中的常用函数


int isalpha(char ch);
判断字符ch是否为字母,是字母返回非0(不一定是1),不是字母返回0
  1. void main(){
  2. printf("%d\n",isalpha('a')); //测试返回值,a是字母所以返回非0
  3. printf("%d\n",isalpha('1')); //测试返回值,1不是字母所以返回0
  4. }




int isalnum(char ch);
判断字符ch是否是字母或数组,若是字母或数组返回非0(不一定是1),不是则返回0
  1. void main(){
  2. printf("%d\n",isalnum('a'));
  3. printf("%d\n",isalnum('1'));
  4. printf("%d\n",isalnum('+'));
  5. }




int isdigit(char ch);
判断字符ch是否为数字,是数字返回非0(不一定是1),不是则返回0
  1. void main(){
  2. printf("%d\n",isdigit('b'));
  3. printf("%d\n",isdigit('1'));
  4. printf("%d\n",isdigit('+'));
  5. }




int isupper(char ch);
判断字符ch是否为大写

int islower(char ch);
判断字符是否为小写
  1. void main(){
  2. printf("%d\n",isupper('a')); //判断a是否是大写字母
  3. printf("%d\n",isupper('A')); //判断A是否是大写字母
  4. printf("%d\n",isupper('0')); //判断0是否是大写字母
  5.  
  6. printf("%d\n",islower('a')); //判断a是否是小写字母
  7. printf("%d\n",islower('A')); //判断A是否是小写字母
  8. printf("%d\n",islower('0')); //判断0是否是小写字母
  9. }




char tolower(char ch);
转换为小写

char toupper(char ch);
转换为大写
  1. void main(){
  2. printf("%c\n",toupper('a')); //a转换为大写字母
  3. printf("%c\n",toupper('1')); //1不是字母原样返回
  4. printf("%c\n",tolower('A')); //A转换为小写字母
  5. printf("%c\n",tolower('1')); //1不是字母原样返回
  6. }




int ispunct(char ch);
是否为标点(除字母,数字和空格以外的所有可打印字符)
  1. void main(){
  2. printf("%d\n",ispunct('a'));
  3. printf("%d\n",ispunct('1'));
  4. printf("%d\n",ispunct('A'));
  5. printf("%d\n",ispunct('+'));
  6. printf("%d\n",ispunct('-'));
  7. printf("%d\n",ispunct('*'));
  8. printf("%d\n",ispunct('/'));
  9. printf("%d\n",ispunct(','));
  10. printf("%d\n",ispunct('#'));
  11. printf("%d\n",ispunct('%'));
  12. }






C 字符/字符串常用函数的更多相关文章

  1. Excel怎样从一串字符中的某个指定“字符”前后截取字符及截取字符串常用函数

    怎么样可以从一串字符中的某个指定位置的前或后截取指定个数的字符. 如:12345.6789,我要截取小数点前(或后)的3个字符.怎么样操作, 另外,怎么样从右边截取字符,就是和left()函数相反的那 ...

  2. python的基本用法(三)字符串常用函数

    字符串常用函数 # s='.abcd.'# new_s=s.strip('.')#默认去掉字符串两边的空格和换行符,想去掉什么括号中就写什么# print('s',s)# print('new_s', ...

  3. python字符串 常用函数 格式化字符串 字符串替换 制表符 换行符 删除空白 国际货币格式

    # 字符串常用函数# 转大写print('bmw'.upper()) # BMW# 转小写print('BMW'.lower()) # bmw# 首字母大写print('how aae you ?'. ...

  4. C常用字符字符串处理函数

    1.strtok();字符串分片函数

  5. SQL Server中截取字符串常用函数

    SQL Server 中截取字符串常用的函数: .LEFT ( character_expression , integer_expression ) 函数说明:LEFT ( '源字符串' , '要截 ...

  6. SQL SERVER 字符串常用函数

    在开发T-SQL时,经常会需要对字符串进行各种各样的操作,下面介绍常用的字符串函数. 1.获取字符的ASCII码 ASCII ASCII码是对字符的标准编码.要获取字符的ASCII码就可以通过调用AS ...

  7. python面试题(二)字符串常用函数

    今天在微信的公众号上看到了一遍python学习开发的文章,里面有一些python的面试题,碰巧最近python不知道学什么了,索性学一下这篇文章啊!!先写一下一些字符串的常用函数.(ps:本人太菜,若 ...

  8. Python 字符串常用函数

    操作字符串的常用函数 函数 描述(返回值) str.capitalize() 将字符串的第一个字符大写 str.title() 返回标题化的字符串,即每个单词的首字母都大写 str.upper() 全 ...

  9. php 字符串常用函数

    数组.字符串和数据库是我们函数里面最.最.最常用的三类函数. 当然PHP的字符串函数也有很多.我们最常使用的两个系列的字符串: 1.单字节字符串处理函数 2.多字节字符串处理函数 3.字符串编码转换函 ...

随机推荐

  1. 多边形背景生成工具推荐-Trianglify

    前端开发whqet,csdn,王海庆,whqet,前端开发专家 low poly低多边形(相似于折纸的效果),多边形风格的设计应用越来越多,今天我们就来看一个利用d3.js写成的生成器Triangli ...

  2. php获取内容中第一张图片地址

    $note = '<img src="http://images.xxx.com/article/cover/201601/20/141539161273.png?imageView2 ...

  3. js判断一个字符串是否在另一个字符串中存在 indexOf

    使用indexOf来实现.当返回值为-1时表示不存在. 举例: var href = 'www.51qdq.com';alert(href.indexOf('test')); //返回值 -1aler ...

  4. 设计模式-工厂方法(Demo)

    工厂方法 工厂方法跟简单工厂一样.都是创建型的设计模式.他攻克了简单工厂的违背开放封闭的缺点. 故事 主人--人家做饭好累的.女仆抱着我大腿说着.自从上次把她买进家.没做了几次饭就喊累--看着她那出处 ...

  5. [原创]javascript prototype 对象 函数 <精简的美丽......>

    精简的美丽...... javascript prototype 对象 函数 在javascript中我们都知道创建一个对象使用如下代码var x = {}对象可以拥有属性和方法var x = {   ...

  6. Win7家庭普通版、家庭高级版、专业版、旗舰版版本差别

    刚才我们发了一个大图片:<Windows7.Vista.XP 三大系统功能差异比较一览图>,现在,再发一张对比图片,简要的看看Windows7家庭普通版.家庭高级版.专业版.旗舰版这四个版 ...

  7. Android(java)学习笔记122:TabActivity使用

    1.首先我们要知道TabActivity是结合TabHost使用的,于是我们自然而然要说明一下TabHost 所谓的TabHost是提供选项卡(Tab页)的窗口视图容器. 此对象包含两个子对象: 一个 ...

  8. Android 100多个Styles快速开发布局XML,一行搞定View属性,一键统一配置UI...

    Android开发中大量使用XML代码作为界面的布局,使用styles能大幅精简XML代码. 比如下面这个界面从AlertDialog至PlacePickerWindow有19个样式相同的跳转Item ...

  9. Android_Intent_passValue(4)

    xml布局文件: <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns ...

  10. JAVA_Gson_example

    package cn.kjxy.GSON; import java.util.List; import cn.kjxy.JSON.HttpHelpers; import com.google.gson ...