一、字符串输出函数

  1、puts() 函数

  使用较为简单,只需要将字符串的地址作为参数进行传递即可。

#include <sthio,h>
#define DEF "I am a #define string1"int main (void){char str1[80] = "I am a #define string1";const char * str2 = "I am a #define string1";...puts(EDF);puts(str1);puts(str2);puts(&str[5]);puts(str2 + 4);...return 0;
}

  puts() 函数在显示字符串时自动在其末尾添加一个换行符。【gets() 函数丢弃输入中换行符】

  puts() 函数在遇到空字符时就停止输出。【如果字符串中未含有空字符,puts() 函数不知在何处停止,会一直打印字符串后面内存中的内容】【对于字符串,其中必须确保含有空字符】

  2、fputs() 函数

  fputs() 函数是puts() 针对文件定制的版本。

  fputs() 函数的第2个参数指明要写入数据的文件。如果是要打印在显示器上,可以使用 ‘stdout’ 这一参数。

  fputs() 函数不会在输出的末尾添加换行符。【fgets() 函数保留输入中的换行符】

char line[81];
while (fgets(line, 81, stdin))fputs(line, stdout);

  3、printf() 函数

  printf() 函数不会自动在每个字符串末尾加上一个换行符。【因此需要在参数中指明换行符的位置】

  4、自定义输入 / 输出函数

  可以在getchar() 和putchar() 的基础上自定义所需要的函数。

/*一个类似于puts() 的函数,但是不会自动添加换行符的函数*/
#include <stdio.h>void put1(const char * string){while (*string != '\0')putchar (*string++);
}

二、常用字符串函数

  1、int strcmp (const char * s1, const char * s2)

  如果 s1 字符串在机器排序序列中位于 s2 字符串的后面,该函数返回一个正数;

  如果 s1 字符串在机器排序序列中位于 s2 字符串的前面,该函数返回一个负数;

  如果两个字符串相等,则返回0;

  2、int strncmp (const char * s1, const char * s2, size_t n)

  该函数的作用和 strcmp() 函数相似,不同的是,该函数在 n 个字符后或遇到第一个空字符时停止比较。

  3、char *  strcpy (char * restrict s1, const char * restrict s2)

  该函数把 s2 指向的字符串拷贝到 s1 指向的位置,返回值是 s1 。

  4、char *  strncharcpy (char * restrict s1, const char * restrict s2, size_t n)

  该函数把 s2 指向的字符串拷贝到 s1 指向的位置,拷贝的字符数不超过 n,其返回值是 s1。该函数不会拷贝空字符后面的字符,如果源字符串的字符少于 n 个,目标字符就以拷贝的空字符结尾;如果源字符串有 n 个或超过 n 个字符,就不拷贝空字符。

  5、char * strcat (char * restrict s1, const char * restrict s2)

  该函数把 s2 指向的字符串拷贝至 s1 指向的字符串末尾。s2 字符串的第 1 个字符将覆盖 s1 字符串的空字符。函数返回 s1 。

  6、char * strncat (char * restrict s1, const char * restrict s2, size_t n)

  该函数把 s2 字符串中的 n 个字符拷贝至 s1 指向的字符串末尾。s2 字符串的第 1 个字符将覆盖 s1 字符串的空字符。不会拷贝 s2 字符串中的空字符和气候的字符,并会在拷贝字符的末尾添加一个空字符。函数返回 s1 。

  7、char * strchr (const char * s, int c)

  如果 s 字符串中包含 c 字符,则函数返回指向 s 字符串中首次出现的 c 字符串的指针(末尾的空字符也是字符串的一部分,所以在查找范围内);如果在字符串 s 中未找到 c 字符,该函数则返回空指针。

  8、char * strpbrk (const char * s1, const char * s2)

  如果 s1 字符中包含 s2 字符串中的任意字符,该函数返回指向 s1 字符串首位置的指针;如果在 s1 字符串中未找到任何 s2 字符串中的字符,则返回空字符。

  9、char * strrchr (const char * s, int c)

  函数返回 s 字符串中 c 字符的最后一次出现的位置(末尾的空字符也是字符串的一部分,所以在查找范围内)。如果未找到 c 字符,则返回空指针。

  10、char * strstr (const char * s1, const char * s2)

  函数返回指向 s1 字符串中 s2 字符串出现的首位置。如果在 s1 中没有找到 s2,则返回空指针。

  11、size_t strlen (const char * s)

转载于:https://www.cnblogs.com/wyt123/p/11146828.html

字符串与字符串函数 - 字符串输出 常用字符串函数相关推荐

  1. java字符串练习题2、反向输出英文字符串

    java字符串练习题2.反向输出英文字符串 目录 java字符串练习题2.反向输出英文字符串 题目 源码: 优化效率 英文中的14个标点符号 英文符号图标 题目 反向输出英文文章的难度在于单词不能有错 ...

  2. 【hive 日期函数】Hive常用日期函数整理

    1.to_date:日期时间转日期函数 select to_date('2015-04-02 13:34:12'); 输出:2015-04-02 1 2 2.from_unixtime:转化unix时 ...

  3. php如果字符串有1 3 5,PHP常用字符串函数小结

    PHP常用字符串函数小结 来源:程序员人生   发布时间:2015-01-22 09:02:32 阅读次数:1594次 1.判断类型的函数 is_bool() //判断是不是为布尔型 is_float ...

  4. oracle常用的字符串函数,Oracle的常用字符函数实验展示

    Oracle提供了众多实用的字符函数,在众多的字符函数中常用的并不多,精通常用的几个字符函数便可游刃有余. 通过这个小文儿简单演示一下常用字符函数的用法,供参考. 1.实验预备动作 1)创建实验表T ...

  5. excel巧用拼接函数CONCATENATE输出JSON字符串

    使用 CONCATENATE(其中一个文本函数)将两个或多个文本字符串联接为一个字符串. 在 Excel 2016.Excel Mobile 和 Excel 网页版 中,此函数已替换为 CONCAT ...

  6. c语言有哪些系统函数,C语言常用系统函数.doc

    C语言常用系统函数.doc 下载提示(请认真阅读)1.请仔细阅读文档,确保文档完整性,对于不预览.不比对内容而直接下载带来的问题本站不予受理. 2.下载的文档,不会出现我们的网址水印. 3.该文档所得 ...

  7. ltrim函数_数据分析常用Excel函数

    Excel是我们工作中经常使用的一种工具,对于数据分析来说,这也是处理数据最基础的工具.本文介绍数据分析中最常用的Excel函数. 查找匹配类 文本数据清洗类 日期类 逻辑运算类 计算统计类 一.查找 ...

  8. PHP中常用的定义数组的函数是,php常用数组函数总结

    php常用数组函数总结 博主:renpengddxx 发表时间:2017-02-19 13:15:37 浏览量:151 1.array_values() 传入给定数组,返回一个给定数组中所有值的数组, ...

  9. mysql sql 函数大全_MySQL常用SQL/函数汇总(持续更新)

    自动生成ROWNUN SELECT (@rowNO := @rowNo+1) AS rowno,a.uuid FROM (SELECT * FROM h_log_proc) a,(SELECT @ro ...

最新文章

  1. VirtWire 向客服发ticket
  2. 简单的shell脚本实例
  3. Mongoose 预定义模式修饰符 Getters 与 Setters 自定义修饰符
  4. golang mysql封装_golang如何封装路由
  5. 【HDOJ】1504 Disk Tree
  6. 从精度看CPU线程:实验室与量产的差距
  7. 迅捷路由器造成计算机无法上网,迅捷(fast)路由器连不上网怎么办?
  8. 南京大学LANDS组
  9. 璞华PLM为全场景产品生命周期管理赋能,助力产品主线的企业数字化转型
  10. React中Mpegts播放器的使用
  11. MSRA院长周礼栋升任微软全球资深副总裁,20年前加入微软,毕业于复旦
  12. 云计算在教育方面的应用
  13. 微服务之API网关:Kong:概要与安装
  14. Unsupervised Feature Learning via Non-Parametric Instance Discrimination
  15. 2007年12月14日
  16. 小程序短信验证码登录,1分钟实现小程序发短信功能,借助云开发10行代码实现短信验证码登录小程序
  17. 高中计算机多媒体技术应用教案,高中信息技术 多媒体技术应用教案 教科版选修.pdf...
  18. python输入姓名专业班级口号_有创意的班级口号14班
  19. 安川服务器显示fn001,安川伺服辅助功能参数一览表
  20. aop的jdk动态代理和cglib动态代理

热门文章

  1. go thrift demo
  2. iOS Base64转码(使用ios7系统自带编码库 和 GMTBase64 两种方式)
  3. ssh: connect to host github.com port 22: Connection timed out
  4. 标签传播算法(Label Propagation)及Python实现
  5. raid1 raid2 raid5 raid6 raid10的优缺点和做各自raid需要几块硬盘
  6. PHP 接口开发注意事项
  7. 【ios】Storyboard教程
  8. linux mmap 内存映射
  9. 802.11ac标准简介
  10. mysql只能查询出1000条数据_MySQL SELECT语句中只能输出1000行数据的原因