温馨提示

写博客是为了记录在开发过程中所涉及到的技术以及遇到的问题的解决,如果该博客对您有所帮助,希望可以点个关注/喜欢;如果您对文章中的内容有什么不同的见解,欢迎留言进行讨论。谢谢!

(三)C语言之字符串与字符串函数

字符串与字符串函数

1. 字符串

使用字符数组存储字符串,\0 表示结束符,字符串可以被修改

void main(){

char str[] = {'c','h','i','n','a','\0'};

//char str[6] = {'c','h','i','n','a'};

//char str[10] = "china";

printf("%s\n",str);

str[0] = 's';

printf("%s\n",str);

printf("%#x\n",str);

getchar();

}

输出结果为:

china

shina

0xd9fd64

使用字符指针存储字符串,字符串不能被修改

void main(){

//内存连续排列

char *str = "how are you?";

//字符串不能被修改

//str[0] = "w";

//

// str += 1;

//*str = 'y';

printf("%s\n",str);

printf("%#x\n",str);

getchar();

}

输出结果为:

how are you?

0x967be4

2. 字符串相关函数

strcat 字符串拼接函数

strcpy 字符串复制函数

void main(){

char dest[50];

char *a = "china";

char *b = " is powerful!"

//将数组a复制到数组dest中

strcpy(dest,a);

//将数组b拼接到数组dest上

strcat(dest,b);

printf("%s\n",dest);

getchar();

}

输出结果为:

china is powerful!

strchr 在一个字符串中查找给定字符的第1个匹配的之处

void main(void){

char *haystack = "I want go to USA!";

char *needle = "to";

//U元素的指针

char* p = strstr(haystack, needle);

if (p){

printf("索引位置:%d\n", p - haystack);

}

else{

printf("没有找到");

}

system("pause");

}

strcmp 比较字符串

strcmpi 比较字符串,忽略大小写

void main(void){

char *str1 = "abc";

char *str2 = "ABC";

//int r = strcmpi(str1, str2);

int r = _strcmpi(str1, str2);

printf("%d\n",r);

//str1 > str2

if (r > 0){

printf("str1 大于str2\n");

}

else if (r == 0){

printf("str1 等于str2\n");

}

//str1 < str2

else if (r < 0){

printf("str1 小于str2\n");

}

system("pause");

}

strset 把字符串s中的所有字符都设置成字符c

void main(void){

char str[] = "internet change the world!";

_strset(str,'w');

printf("%s\n",str);

system("pause");

}

strrev 把字符串s的所有字符的顺序颠倒过来

void main(void){

char str[] = "internet change the world!";

_strrev(str);

printf("%s\n", str);

system("pause");

}

atoi 字符串转为int类型

atol():将字符串转换为长整型值

void main(void){

char* str = "a78";

//int r = atoi(str);

printf("%d\n", r);

system("pause");

}

strtod:字符串转为double类型

void main(void){

char* str = "77b8b";

char** p = NULL;

//char* p = str + 2;

//参数说明:str为要转换的字符串,endstr 为第一个不能转换的字符的指针

double r = strtod(str,p);

printf("%lf\n", r);

printf("%#x\n", p);

system("pause");

}

strupr转换为大写

void main(void){

char str[] = "CHINA motherland!";

_strupr(str);

printf("%s\n",str);

system("pause");

}

转换为小写

void mystrlwr(char str[],int len){

int i = 0;

for (; i < len; i++){

//A-Z 字母 a-Z

if (str[i] >= 'A' && str[i] <= 'Z'){

str[i] = str[i]-'A' + 'a';

}

}

}

c语言trave函数,(三)C语言之字符串与字符串函数相关推荐

  1. C语言基础知识(三)-程序设计结构、数组、字符串处理函数

    本文是C语言的基础知识,主要讲解三种程序设计结构.数组.字符串和字符数组.数组元素查询以及字符串处理函数. 程序结构设计 包括C语言在内的几乎任何编程语言都支持以下三种程序设计结构,它们分别是: 顺序 ...

  2. 西门子哪款plc支持c语言,西门子PLC三种语言的区别

    原标题:西门子PLC三种语言的区别 PLC是机器人重要的一部分,下面小编就为大家介绍一些3种语言的区别,帮助大家学习. 一.梯形图 梯形图作为简单易读通俗易懂基本属于新人学习PLC的首选,而且调试的时 ...

  3. pythonreshape函数三个参数_Python Numpy中reshape函数参数-1的含义

    python numpy中reshape函数参数-1的含义,新数组的shape属性应该要与原来数组的一致,即新数组元素数量与原数组元素数量要相等.一个参数为-1时,那么reshape函数会根据另一个参 ...

  4. C++(12)--函数基础:按值传递、传递数组、函数指针

    模块化编程--函数 1. 函数基本知识 2. 函数的参数 2.1 按值传递机制(小议按引用传递) 2.2 使用数组做函数参数(用户头文件,const的防改) 2.3 使用二维数组作为函数的参数 2.4 ...

  5. c 语言绘图函数,c语言图形编程(三、绘图函数-)(C language graphics programming (three, drawing function -)).doc...

    c语言图形编程(三.绘图函数-)(C language graphics programming (three, drawing function -)).doc c语言图形编程(三.绘图函数-01) ...

  6. 一起学习C语言:函数(三)

    上一篇<一起学习C语言:函数(二)> 中,我们了解了内部函数和外部函数,以及变量的声明周期与作用域.本章节,我们分析函数的存储类别与声明方式,以及函数的递归调用原理. 章节预览: 6. 变 ...

  7. C语言图形编程(绘图函数部分),C语言图形编程(三、绘图函数-02)12

    C语言图形编程(三.绘图函数-02)12 } 84. putimage() 输出图像函数 功能: 函数putimage()将一个先前保存在内存中的图像输出到屏幕上. 用法: 此函数调用方式为void ...

  8. c语言函数三种方式,c语言函数的三种调用方式是什么

    函数的三种调用方式:1.函数作为表达式中的一项出现在表达式中,例"z=max(x,y)":2.函数作为一个单独的语句,例"printf("%d",a) ...

  9. 怎样用才c语言定义一个三位数,怎样编写一个c语言程序计算任意输入一个3位数的整数的各位数字之和。要求主函数包括输入输出和调用该函数。...

    点击查看怎样编写一个c语言程序计算任意输入一个3位数的整数的各位数字之和.要求主函数包括输入输出和调用该函数.具体信息 答:#include void main(){ int a,sum=0; pri ...

最新文章

  1. 喜忧参半:我国蜂窝物联网全球占比超过75%
  2. time_wait状态产生的原因,危害,如何避免
  3. git push origin master报错
  4. Mysql的drop/truncate/delete
  5. Sharepoint 2010 应用范围
  6. Dynamics CRM 依赖组件类型为应用程序功能区导致的无法删除实体问题的解决方法...
  7. IOS UIWindow 和 UIScreen
  8. 建行提示找不到服务器,中国建设银行E路护航网银安全组件常见问题解答
  9. Qt开发技术:Qt绘图系统(二)QPainter详解
  10. blender2.8设置玻璃材质
  11. 安卓开发实战!一年后斩获腾讯T3,年薪超过80万!
  12. 每日安全文章【1122】
  13. ti芯片怎么成为一站式的代理
  14. SAP-FI 科目的统驭科目类型设置错了如何更改
  15. 【python系列】使用mayavi画3d散点图
  16. 10款相似图片搜索引擎
  17. unicode 生僻字_[微软拼音小技巧] 如何用Unicode输入生僻字
  18. 电子邮件SMTP协议原始命令码和工作原理
  19. SVM支持向量机的损失函数解析
  20. 链接虚拟机orecal

热门文章

  1. oracle 批量删除表数据的两种方式
  2. mysql在查询结果中添加数据_MySQL将查询结果插入到数据表中
  3. JSON教程(非常详细)
  4. 这份网络安全入门笔记(共327页),助你步入安全门槛,建议收藏
  5. 关于time_t,clock_t ,time(),clock(),CLK_TCK, CLOCKS_PER_SEC 的使用
  6. 科技美学测评里用的测试软件,什么是科技美学?——那岩测评
  7. 想要稳定使用win10,这个功能不要点
  8. day08 外键字段的增删改查 正向反向插叙概念 跨表查询 聚合查询与分组查询 F查询
  9. 帝国CMS数据库数据表详细说明
  10. 最毁三观的明星爆料你知道吗