void *memcpy(void *dest, const void *src, size_t n);

从源src所指的内存地址的起始位置开始拷贝n个字节到目标dest所指的内存地址的起始位置中.

void *memmove( void* dest, const void* src,size_t count);

由src所指内存区域复制count个字节到dest所指内存区域。
memmove用于从src拷贝count个字符到dest,如果目标区域和源区域有重叠的话,memmove能够保证源串在被覆盖之前将重叠区域的字节拷贝到目标区域中。但复制后src内容会被更改。但是当目标区域与源区域没有重叠则和memcpy函数功能相同。

void *memset(void *s, int ch, size_t n);

将s中前n个字节(typedef unsigned int size_t)用ch替换并返回s。
memset作用是在一段内存块中填充某个给定的值,它是对较大的结构体或数组进行清零操作的一种最快方法.

int memcmp(const void *buf1, const void *buf2, unsigned int count);

比较内存区域buf1和buf2的前count个字节。
当buf1<buf2时,返回值<0
当buf1=buf2时,返回值=0
当buf1>buf2时,返回值>0

extern char *strcpy(char* dest, const char *src);

把从src地址开始且含有NULL结束符的字符串复制到以dest开始的地址空间.src和dest所指内存区域不可以重叠且dest必须有足够的空间来容纳src的字符串。返回指向dest的指针。

char * strncpy(char *dest, char *src,size_t num);

复制src中的内容(字符,数字、汉字....)到dest,复制多少由num的值决定,返回指向dest的指针。如果遇到null字符('\0'),且还没有到num个字符时,就用(num - n)(n是遇到null字符前已经有的非null字符个数)个null字符附加到destination。

extern char *strcat(char *dest,char *src);

把src所指字符串添加到dest结尾处(覆盖dest结尾处的'\0')并添加'\0'。src和dest所指内存区域不可以重叠且dest必须有足够的空间来容纳src的字符串。返回指向dest的指针。

extern char *strncat(char *dest,char *src,int n);

把src所指字符串的前n个字符添加到dest结尾处(覆盖dest结尾处的'\0')并添加'\0'。src和dest所指内存区域不可以重叠且dest必须有足够的空间来容纳src的字符串。返回指向dest的指针。

extern int strcmp(const char *s1,const char * s2);

比较字符串s1和s2。
当s1<s2时,返回值<0
当s1==s2时,返回值=0
当s1>s2时,返回值>0
即:两个字符串自左向右逐个字符相比(按ASCII值大小相比较),直到出现不同的字符或遇'\0'为止。

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

此函数功能即比较字符串str1和str2的前maxlen个字符。

如果前maxlen字节完全相等,返回值就=0;

在前maxlen字节比较过程中,如果出现str1[n]与str2[n]不等,则返回(str1[n]-str2[n])。

int strcasecmp (const char *s1, const char *s2);

strcasecmp()用来比较参数s1和s2字符串,比较时会自动忽略大小写的差异。

若参数s1和s2字符串相等则返回0。

s1大于s2则返回大于0 的值。

s1 小于s2 则返回小于0的值。

int strncasecmp(const char *s1, const char *s2, size_t n)

strncasecmp()用来比较参数s1和s2字符串前n个字符,比较时会自动忽略大小写的差异,

若参数s1和s2字符串相同则返回0

s1若大于s2则返回大于0的值

s1若小于s2则返回小于0的值.

extern char *strchr(const char *s,char c);

查找字符串s中首次出现字符c的位置,返回首次出现c的位置的指针,如果s中不存在c则返回NULL。

extern unsigned int strlen(char *s);

计算字符串s的(unsigned int型)长度,不包括'\0'在内.返回s的长度,不包括结束符NULL。

C语言string.h常用函数总结的更多相关文章

  1. C string.h 常用函数

    参考:http://womendu.iteye.com/blog/1218155 http://blog.csdn.net/zccst/article/details/4294565 还有一些,忘记了 ...

  2. C <string.h>常用函数介绍

    1. strcpychar *strcpy(char *destin, char *source);功能:将source指向的字符串拷到destin. int main() { ]; "; ...

  3. c++中string的常用函数说明

    string可以说是是字符数组的升级版,使用更加啊方便,不容易出错.本文对string的常用函数进行简单介绍,做到会用即可. string中的常用函数分为四类,即赋值,添加,比较和删除. 一.赋值 1 ...

  4. C++string类常用函数

    C++string类常用函数 string类的构造函数:string(const char *s);    //用c字符串s初始化string(int n,char c);     //用n个字符c初 ...

  5. C语言string.h中常用字符函数介绍

    原文:http://www.cnblogs.com/xuwenmin888/archive/2013/05/03/3057883.html strcpy 函数名: strcpy 功 能: 拷贝一个字符 ...

  6. c语言string.h和memory.h某些函数重复问题

    在C语言中,为了使用memset()函数,你是选择#include <string.h>还是<memory.h>?两个都可以,如何选择? <string.h>,标准 ...

  7. C语言中字符串常用函数--strcat,strcpy

    strcpy 原型声明:extern char *strcpy(char* dest, const char *src); 头文件:#include <string.h> 功能:把从src ...

  8. C语言ctype.h字符函数和字符串

    ctype.h存的是与字符相关的函数: 这些函数虽然不能处理整个字符串,但是可以处理字符串中的字符: ToUpper()函数,利用toupper()函数处理字符串中的每个字符,转换成大写: Punct ...

  9. String 类的实现(3)String类常用函数

      2 #include<iostream> 3 #include<stdio.h> 4 #include<assert.h> 5 #include <iom ...

随机推荐

  1. angular2+ 自定义pipe管道实例--定义全局管道及使用

    首先到项目目录下ng g pipe pipe/myslice 就会在app目录下生成一个pipe文件夹文件夹下有myslice.pipe.ts文件,如果没有也可以自己手动新建 然后需要再app.mod ...

  2. js i++ 与 ++i 的区别

    转载:http://blog.csdn.net/hjb2722404/article/details/50423804 在javascript中,我们常常搞不懂i++与++i的区别,今天我们就来简单说 ...

  3. 170407、java基于nio工作方式的socket通信

    客户端代码: /** * */ package com.bobohe.nio; import java.io.BufferedReader; import java.io.IOException; i ...

  4. Javascript-const 常量

    const 常量 常量是块级作用域,很像使用 let语句定义的变量.常量的值不能通过重新赋值来改变,并且不能重新声明. 此声明创建一个常量,其作用域可以是全局或本地声明的块. 与var变量不同,全局常 ...

  5. Code Forces 22B Bargaining Table

    B. Bargaining Table time limit per test 2 seconds memory limit per test 256 megabytes input standard ...

  6. R中基本命名(未完)

    ls() #查看 rm(list=ls()) #清除内存变量 library() #载入库包 help() #查看帮助文档 head(iris) #查看数据集 class(iris) #查看数据集的类 ...

  7. ubuntu mysql 数据库备份以及恢复[命令行]

    之所以加了个ubuntu,其实也没什么,就是恢复数据库的时候给幽默了一下,所以特地加上.   写在前面:一直很想好好的学linux命令行.shell编程,幻想自己能够通过学习进而成为命令行高手,游刃于 ...

  8. llvm,gcc

    GCC,LLVM,Clang编译器对比   在XCode中,我们经常会看到这些编译选项(如下图),有些人可能会有些茫然,本文将对GCC4.2.LLVM GCC 4.2.LLVM compliler 2 ...

  9. 自定义HTTP头时的注意事项(转)

    原文:https://blog.gnuers.org/?p=462 HTTP头是可以包含英文字母([A-Za-z]).数字([0-9]).连接号(-)hyphens, 也可义是下划线(_).在使用ng ...

  10. C++ 带有通配符*与?的字符串匹配

    题目:两个字符串,一个是普通字符串,另一个含有*和?通配符,*代表零个到多个任意字符,?代表一个任意字符,通配符可能多次出现.写一个算法,比较两个字符串是否相等. 发现许多公司笔试面试都有这道题目,于 ...