1.内存充填

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

是由C Run-time Library提供的提供的函数,作用是在一段内存块中填充某个给定的值,它是对较大的结构体或数组进行清零操作的一种最快方法。由于是语言层面提供,所以可跨平台使用。

示例:

char str[] = "almost every programmer should know memset!";
memset (str,'-',6);  

2.内存拷贝

void *memcpy(void *dest, const void *src, size_t n);memcpy指的是c和c++使用的内存拷贝函数,memcpy函数的功能是从源src所指的内存地址的起始位置开始拷贝n个字节到目标dest所指的内存地址的起始位置中。C语言:#include<string.h>
C++:#include<cstring>

3.比较两个字符串
extern int strcmp(const char *s1,const char *s2);
当s1<s2时,返回为负数;
当s1==s2时,返回值= 0;
当s1>s2时,返回正数。
即:两个字符串自左向右逐个字符相比(按ASCII值大小相比较),直到出现不同的字符或遇'\0'为止。

int strncmp ( const char * str1, const char * str2, size_t n );
str1, str2 为需要比较的两个字符串,n为要比较的字符的数目。

4.拷贝字符串,

char * strcpy(char* destination,const char * source);
这里,需要注意strcpy仅仅复制到null字符就结束了。
将由source指针指示的C 字符串(包括结尾字符)复制到destination指针指示的区域中。
该函数不允许source和destination的区域有重叠,同时,为了避免溢出,destination区域应该至少和source区域一样大返回目标串的地址。

char* strncpy(char* destination,const char* source,size_t num);
strncpy:复制source的前num字符到destination。
如果遇到null字符('\0'),且还没有到num个字符时,就用(num - n)(n是遇到null字符前已经有的非null字符个数)个null字符附加到destination。返回目标串的地址。
注意:并不是添加到destination的最后,而是紧跟着由source中复制而来的字符后面。下面举例说明:char des[] = "Hello i am!";char source[] = "abc\0def";strncpy(des,source,5);此时,des区域是这样的:a,b,c,\0,\0,i,空格,a,m,!  ???\0,\0并不是添加在!的后面。

5.内存移动

void * memmove(void* destination,const void* source,size_t num);

memmove:同memcpy完成同样的功能,区别是,memmove允许destination和source的区域有重叠。而其他三个函数不允许。例子:char str[] = "This is a test!";memmove(str+2,str+10,4);此时,str变成:Thtests a test!

转载于:https://www.cnblogs.com/liyubo/p/9090519.html

char 类型的操作函数相关推荐

  1. python查看dataframe数据类型_python pandas中DataFrame类型数据操作函数的方法

    python数据分析工具pandas中DataFrame和Series作为主要的数据结构. 本文主要是介绍如何对DataFrame数据进行操作并结合一个实例测试操作函数. 1)查看DataFrame数 ...

  2. python dataframe函数_python pandas中DataFrame类型数据操作函数的方法

    这篇文章主要介绍了关于python pandas中DataFrame类型数据操作函数的方法,有着一定的参考价值,现在分享给大家,有需要的朋友可以参考一下 python数据分析工具pandas中Data ...

  3. 元组类型与列表类型的操作函数和方法

    序列类型定义 序列是具有先后关系的一组元素,序列是一维元素向量,元素之间可以相同,元素类型可以不同.元素间由序号引导,通过下标访问序列的特定元素 序列类型的衍生包括:字符串类型.元组类型.列表类型 序 ...

  4. Python—pandas中DataFrame类型数据操作函数

    python数据分析工具pandas中DataFrame和Series作为主要的数据结构.  本文主要是介绍如何对DataFrame数据进行操作并结合一个实例测试操作函数.  1)查看DataFram ...

  5. oracle数值型转为char类型,PLSQL: Oracle函数to_char转化数字型指定小数点位数的技巧...

    问题题出:                 数字 0.023 => 转化成字符串 "0.023"问题难点:to_char,函数功能,就是将数值型或者日期型转化为字符型. 比如 ...

  6. 常用char 类型函数的介绍

    昨天学习了C语言的几种常用的变量类型,今天整理一下两对常用的char类型输入输出的函数,与大家共同学习,刚开始接触,需要学习的地方很多,欢迎感兴趣的同学交流指导. 首先我们来看第一对getchar() ...

  7. 集合类型及其操作(复习)

    集合类型及其操作一.概述集合类型定义集合操作符集合处理方法集合类型应用场景二.集合类型定义集合是多个元素的无序组合集合类型与数学中的集合概念一致集合元素之间无序,每个元素唯一,不存在相同元素集合是多个 ...

  8. C/C++时间相关类型timeval、time_t、tm、clock_t、size_t、时间戳及其对应操作函数总结

    C/C++时间相关结构体timeval.time_t.tm.clock_t.size_t及其对应操作函数总结 一.结构体timeval与类型time_t.clock_t.size_t timt_t.c ...

  9. bool类型数组转换成一个整数_「PHP」常用的数组键值操作函数,面试重点

    数组键值操作函数 1.array_values ( array $array ) : array 返回数组中所有的值的数组 $a=['name'=>'jikeshiguangji','age'= ...

最新文章

  1. Linux_SystemLogManager
  2. 极大似然估计 —— Maximum Likelihood Estimation
  3. 在独立Java应用程序中使用Tomcat JDBC连接池
  4. eclipse mysql生成实体类_Eclipse实现数据库反向生成实体类(pojo)-------(插件安装和实现步骤的说明)...
  5. 6 篇 2019 年最新模型剪枝技术合集
  6. (十三)函数指针做函数形参
  7. 《CLR Via C# 第3版》笔记之(二十一) - 异步编程模型(APM)
  8. dml操作mysql_数据库DML操作(DCL了解)
  9. 设计模式---适配器模式(C++实现)
  10. uwb定位管理系统的介绍
  11. 理解直推式学习和归纳式学习
  12. 00002__失恋卖茶女
  13. 2020年中国透明聚丙烯(TPP)行业概况:仍有较大市场空间 [图]
  14. 华为荣耀20和x10比较_华为畅享20Pro和荣耀X10哪个好-有什么区别-哪个性价比高
  15. WSO2 文件上传 (CVE-2022-29464)漏洞复现
  16. 大学生web前端期末大作业实例代码 (1500套,建议收藏) HTML+CSS+JS
  17. 警告 Invalid cookie header: Set-Cookie:
  18. 梯度下降、牛顿法、拟牛顿法
  19. navicat mysql 百度云_转载:用navicat连接百度云服务器上的mysql数据库
  20. 明伟LRS-350-24方案,送BOM表,原理图、PCB,可编辑。 以及结构图

热门文章

  1. Arduino Uno 连接 接近开关
  2. 【程序设计】字符串题单
  3. 如何将本地文件通过终端上传到apache上(压缩文件)
  4. 支付新闻_联动优势存在多处违规
  5. 龙泉正规的计算机学校有哪些,龙泉正规高铁乘务学校排名榜
  6. CoOS之上下文切换
  7. CreatorPrimer(8)|加载预制件
  8. 牛客网SQL刷题笔记总结
  9. 腾讯云网站备案授权码使用教程
  10. odoo自定义按钮覆盖原来的底部按钮以及footer标签覆盖问题