c_str()和strcasecmp这两个函数以前没怎么玩过,今天碰到了,来学习一下。

int main()
{char str1[10] = "AB";char str2[10] = "ab";if(!strcasecmp(str1,str2)){printf("yes\n");}return 0;
}

打印:yes

strcasecmp的作用是比较两个字符串是否相等,且不区分大小写。其头文件在<string.h>中。我这里的编译环境是gcc,我在VS2013上没编译过去,也是奇怪。

c_str()属于c++中的函数,其目的是将c++对应的string转换成C风格的字符串。但C风格的字符串可以直接赋值给C++中的string,感觉这对C++有点不公平,但谁让C++是大哥大呢。

先看一段代码:

int main()
{char str1[10] = "123";//char str2[10]=str1;错误string s1 = "abc";string s2 = s1;cout << s2;return 0;
}

打印:abc

C中字符串复制是通过strcpy来实现的,不能直接赋值。但C++中的string可以。

int main()
{char str1[10] = "123";string s =str1;cout << s<<endl;string s1 = "456";char str2[10];strcpy(str2,s1.c_str());printf("%s\n", str2);return 0;
}

打印:123

456

这两个函数很简单,只是之前用的少。

c_str()和strcasecmp相关推荐

  1. openssl 基本算法小例

    openssl openssl支持各种算法,在网络传输中我们需要用到各类算法,尤其是在安全协议里面,hmac算法是必须要用得,dtls协议里面也会用到各类对称算法,下面定义一个类,使用openssl得 ...

  2. php 比较字符串差,PHP字符串比较函数strcmp()和strcasecmp()使用总结

    比较字符串是任何编程语言的字符串处理功能中重要的特性之一.在PHP中除了可以使用比较运算符号(==.)加以比较外,还提供了一系列的比较函数,使PHP可以进行更复杂的字符串比较.如strcmp().st ...

  3. c++ string c_str() 和data()区别

    看下面的英文解释: const char* c_str ( ) const; Get C string equivalent Generates a null-terminated sequence ...

  4. C++中的c_str()函数用法

    <span style="font-size: 14px;">语法: const char *c_str(); c_str()函数返回一个指向正规C字符串的指针常量, ...

  5. c_str 以及atoi

    const char *c_str();c_str()函数返回一个指向正规C字符串的指针, 内容与本string串相同. 这是为了与c语言兼容,在c语言中没有string类型,故必须通过string类 ...

  6. c 串转string_string::c_str()、string::c_data()及string与char *的正确转换

    string::c_str的介绍: c_str函数的返回值是const char*的,不能直接赋值给char*,所以就需要我们进行相应的操作转化,下面就是这一转化过程. c++语言提供了两种字符串实现 ...

  7. 【C++】18.char[] 与 string 的区别 与 互相转化、c_str() 函数用法

    原文链接:https://blog.csdn.net/weixin_43273685/article/details/101836630 注意:原文中有一些错误,我这里做了修改. char*与stri ...

  8. C++中的 c_str() 函数

    功能:c_str() 函数可以将 const string* 类型 转化为 cons char* 类型 头文件:#include<cstring> c_str()就是将C++的string ...

  9. C++string类型与C语言字符数组的转换 std::string.c_str()函数

    语法: const char *c_str();搜索 c_str()函数返回一个指向正规C字符串的指针, 内容与本string串相同. 这是为了与c语言兼容,在c语言中没有string类型,故必须通过 ...

最新文章

  1. 假如我是JAVA面试官,我会这样虐你
  2. Docker建网站 4条命令搞定
  3. 使用python模拟Simple方式连接ldap
  4. suse linux 软件包安装,SUSE Linux 11系统rpm包离线安装GCC
  5. linux 命令访问url: curl http://www.baidu.com/index.html
  6. 同事操作两个数据源保持事务一致_「微服务架构」微服务架构中的数据一致性...
  7. Oracle中on和where的区别
  8. python爬虫库教程_Python爬虫Selenium库详细教程
  9. BGD-py实现学习【1】[转载]
  10. 移动机器人构型对比分析
  11. RabbitMQ基础知识详解
  12. 【优化算法】差分蜂群优化算法(DEABC)【含Matlab源码 1230期】
  13. html 图片触碰有放大效果,CSS3 鼠标滑过图片突出放大效果
  14. Ruby 从入门到掌握视频教程(31 个视频)
  15. MATLAB图像处理基本函数
  16. 那些年京东出现的BUG损失惨重,你还敢瞧不起测试?
  17. 蛋白胶条质谱鉴定实验
  18. python中@property的作用
  19. 房多多Q2营收同比下降46%:亏损同比扩大8.9倍,股价再创新低
  20. Deep Learning on Graphs: A Survey论文笔记

热门文章

  1. leetcode(78)子集
  2. Perl的输出:print、say和printf、sprintf
  3. 小白学统计(4)——数据集中趋势的描述
  4. [Angular2 Form] Style Validation in Angular 2 Forms
  5. Linux中makefile项目管理
  6. 结构体是否有默认的构造函数?(没有,如果需要,需要自己写)
  7. 外行人都能看懂的SpringCloud,错过了血亏!
  8. other-如何可以查看别人请求的输出结果
  9. 关于前端缓存的一个封装思路
  10. vim 多行注释消除注释,多行删除