C中对于字符串的操作总结

原创 2005年04月30日 20:47:00

操作函数,所在函数库为string.h、mem.h
mem…操作存贮数组
void *memccpy(void *destin,void *source,unsigned char ch,unsigned n)
void *memchr(void *s,char ch,unsigned n)
void *memcmp(void *s1,void *s2,unsigned n)
int   memicmp(void *s1,void *s2,unsigned n)
void *memmove(void *destin,void *source,unsigned n)
void *memcpy(void *destin,void *source,unsigned n)
void *memset(void *s,char ch,unsigned n)
这些函数,mem…系列的所有成员均操作存贮数组.在所有这些函数中,数组是n字节长.
memcpy从source复制一个n字节的块到destin.如果源块和目标块重迭,则选择复制方向,
  以例正确地复制覆盖的字节.
memmove与memcpy相同.
memset将s的所有字节置于字节ch中.s数组的长度由n给出.
memcmp比较正好是n字节长的两个字符串s1和s2.些函数按无符号字符比较字节,因此,
  memcmp("0xFF","/x7F",1)返回值大于0.
memicmp比较s1和s2的前n个字节,不管字符大写或小写.
memccpy从source复制字节到destin.复制一结束就发生下列任一情况:
  (1)字符ch首选复制到destin.
  (2)n个字节已复制到destin.
memchr对字符ch检索s数组的前n个字节.
返回值:memmove和memcpy返回destin
       memset返回s的值
       memcmp和memicmp─┬─若s1<s2返回值小于0
                        ├─若s1=s2返回值等于0
                        └─若s1>s2返回值大于0
       memccpy若复制了ch,则返回直接跟随ch的在destin中的字节的一个指针;
              否则返回NULL
       memchr返回在s中首先出现ch的一个指针;如果在s数组中不出现ch,就返回NULL.

void  movedata(int segsrc,int offsrc,
               int segdest,int offdest,
               unsigned numbytes)
       本函数将源地址(segsrc:offsrc)处的numbytes个字节
       复制到目标地址(segdest:offdest)
void  movemem(void *source,void *destin,unsigned len)
       本函数从source处复制一块长len字节的数据到destin.若源地址和目标地址字符串
       重迭,则选择复制方向,以便正确的复制数据.
void  setmem(void *addr,int len,char value)
       本函数把addr所指的块的第一个字节置于字节value中.

str…字符串操作函数
char   stpcpy(char *dest,const char *src)
        将字符串src复制到dest
char   strcat(char *dest,const char *src)
        将字符串src添加到dest末尾
char   strchr(const char *s,int c)
        检索并返回字符c在字符串s中第一次出现的位置
int    strcmp(const char *s1,const char *s2)
        比较字符串s1与s2的大小,并返回s1-s2
char   strcpy(char *dest,const char *src)
        将字符串src复制到dest
size_t strcspn(const char *s1,const char *s2)
        扫描s1,返回在s1中有,在s2中也有的字符个数
char   strdup(const char *s)
        将字符串s复制到最近建立的单元
int    stricmp(const char *s1,const char *s2)
        比较字符串s1和s2,并返回s1-s2
size_t strlen(const char *s)
        返回字符串s的长度
char   strlwr(char *s)
        将字符串s中的大写字母全部转换成小写字母,并返回转换后的字符串
char   strncat(char *dest,const char *src,size_t maxlen)
        将字符串src中最多maxlen个字符复制到字符串dest中
int    strncmp(const char *s1,const char *s2,size_t maxlen)
        比较字符串s1与s2中的前maxlen个字符
char   strncpy(char *dest,const char *src,size_t maxlen)
        复制src中的前maxlen个字符到dest中
int    strnicmp(const char *s1,const char *s2,size_t maxlen)
        比较字符串s1与s2中的前maxlen个字符
char   strnset(char *s,int ch,size_t n)
        将字符串s的前n个字符置于ch中
char   strpbrk(const char *s1,const char *s2)
        扫描字符串s1,并返回在s1和s2中均有的字符个数
char   strrchr(const char *s,int c)
        扫描最后出现一个给定字符c的一个字符串s
char   strrev(char *s)
        将字符串s中的字符全部颠倒顺序重新排列,并返回排列后的字符串
char   strset(char *s,int ch)
        将一个字符串s中的所有字符置于一个给定的字符ch
size_t strspn(const char *s1,const char *s2)
        扫描字符串s1,并返回在s1和s2中均有的字符个数
char   strstr(const char *s1,const char *s2)
        扫描字符串s2,并返回第一次出现s1的位置
char   strtok(char *s1,const char *s2)
        检索字符串s1,该字符串s1是由字符串s2中定义的定界符所分隔
char   strupr(char *s)
        将字符串s中的小写字母全部转换成大写字母,并返回转换后的字符串

C语言字符串应用总结[转]

今天总结了下C语言字符串函数。C语言字符串函数总结:1.字符处理库(ctype)中的函数2.stdio中的字符串和字符输入/输出的函数3.通用实用库stdlib中的字符串转换函数4.字符串处理库str...
  • xuexiiphone
  • xuexiiphone
  • 2016年04月26日 18:10
  • 697

字符串常用操作方法总结

# -*- coding:utf-8 -*- '''字符串常用操作方法总结,部分内容整理自网上''' test_str='The Zen of Python, by Tim Peters' '''一...
  • linzch3
  • linzch3
  • 2016年09月03日 15:41
  • 1324

字符串的基本操作,c语言实现

话不多说,直接上代码。如果有什么错误,直接喷! #include #include #define LEN 100 #define LENINC 10 int main(...
  • wxy540843763
  • wxy540843763
  • 2016年01月09日 10:49
  • 491

C/C++中字符串String及字符操作方法

本文总结C/C++中字符串操作方法,还在学习中,不定期更新。。。 字符串的输入方法 1、单个单词可以直接用std::cin,因为:std::cin读取并忽略开头所有的空白字符(如空格,换行符,制表符)...
  • u013171165
  • u013171165
  • 2014年06月22日 13:33
  • 7332

c语言字符串2插入到字符串1中

#include #include char insert(char s1[],char s2[]) { char s3[40]={0}; ...
  • u012187684
  • u012187684
  • 2014年05月08日 21:08
  • 2247

jsp常用字符串操作-不断更新

//构造去掉空格函数 String.prototype.trim=function() { /** * 用正则表达式将前后空格 * 用空字符串替代 */ return this.replace(/(^...
  • nightelve
  • nightelve
  • 2013年12月13日 14:21
  • 4786

C 语言中操作字符串的一些函数源代码(对比版)

从网上找到的一些字符串函数源码,对比如下:  1. strlen(),计算字符串长度 int strlen (const char *s) { const char *p; for (p = ...
  • xhhjin
  • xhhjin
  • 2013年01月15日 16:00
  • 1600

字符串类面试题总结

1.实现strStr() 字符串查找(又称查找子字符串),对于一个给定的 source 字符串和一个 target 字符串,你应该在 source 字符串中找出 target 字符串出现的第一个位置(...
  • naruto2011sasuke
  • naruto2011sasuke
  • 2015年06月25日 11:40
  • 1535

两个字符串的距离

对于两个不同的字符串,我们有一套操作方法来把他们变得相同,具体方法为: 修改一个字符(如把“a”替换为“b”) 删除一个字符(如把“traveling”变为“travelng”) 比如对于“...
  • jiyanfeng1
  • jiyanfeng1
  • 2013年01月20日 04:48
  • 959

C语言常用字符串操作函数总结

C语言常用字符串操作函数总结
  • Leeds1993
  • Leeds1993
  • 2017年03月09日 20:30
  • 752
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:C中对于字符串的操作总结
举报原因:
原因补充:

(最多只允许输入30个字)