字符串相关函数-strcpy()与strcmp()
一些小问题,避免出现低级错误。
1、strcmp(s1,s2):
字符串指针不见'\0'不回头,这个常在与单个字符作比较时写着写着就忘了.
char* p_ch1="this is an example!";
char* p_ch2="h";
printf("%d ",strcmp(p_ch1+,p_ch2);
printf("%d ",strncmp(p_ch1+,p_ch2,));//若想比较"this is an example!"中第二个字符和"h"的关系,要用strncmp
参数是 const char* 型,因此 " " 与 ' '的区别要清楚,后者在strcmp语境下看做int。 " "的一定是个指针,' '看情况,可以看做数字ASCII码或字符,所以在C++的string::iterator中,判断 *it 用 ' '。
char *p_ch = "hehenmb";
strncmp(p_ch,'h',); //error
strncmp(p_ch,"h",);
2、strcpy(s1,s2):
将s2全部拷入s1'处'(不考虑内存),是在s1指针指向的位置处进行粘贴,s1处以及原来的s1后面的数据都消失,变成s2的内容。
下面是一个单词单数变复数的简单例子:
规定-y变成-ies,-ch/-sh变成-ches/-shes,其他都在原单词末尾+s。
char* WordTrans(char* ch){
if(!strcmp(ch,"y")){
strcpy(ch,"ies");
return ch;
}
if(!strcmp(ch,"h")){
if(!strncmp(ch-,"c" || !strncmp(ch-,"s"))){ //这个写法中,在比较ch-1时是单个比较
strcpy(ch+,"es");
return ch;
}
else{
strcpy(ch+,"s");
return ch;
}
}
else{
strcpy(ch+,"s")
return ch;
}
}
int main(){
char word[];
scanf("%s",word);
char* p_ch=word;
WordCmp(p_ch+strlen(word)-);
printf("%s\n",word);
return ;
}
先这样了,以后再补。
字符串相关函数-strcpy()与strcmp()的更多相关文章
- 转:C语言字符串操作函数 - strcpy、strcmp、strcat、反转、回文
转自:C语言字符串操作函数 - strcpy.strcmp.strcat.反转.回文 C++常用库函数atoi,itoa,strcpy,strcmp的实现 作者:jcsu C语言字符串操作函数 1. ...
- C语言字符/字符串相关函数收藏
字符串的声明与使用 定义一个可变的字符串: char ch[]={"123456abc"}; char ch2[5]={"123456789"}; //会出现警 ...
- 不使用库函数、自己编写的(strlen、strcpy、strcmp、strcat、memcmp、memcpy、memmove)
不使用库函数.自己编写的(strlen.strcpy.strcmp.strcat.memcmp.memcpy.memmove) //求字符串长度的函数 int my_strlen(const char ...
- 逆向 string.h 函数库 memset、strcpy、strcmp 函数
memset 函数 函数原型:void *memset(void *str, int c, size_t n) 主要功能:复制字符 c(一个无符号字符)到参数 str 所指向的字符串的前 n 个字符 ...
- Perl函数:字符串相关函数
Perl字符串相关函数 字符串的内置函数有: chomp, chop, chr, crypt, fc, hex, index, lc, lcfirst, length, oct, ord, pack, ...
- db2字符串相关函数的使用
db2字符串相关函数的使用 from :internet 一.字符转换函数 1.ASCII() 返回字符表达式最左端字符的ASCII 码值.在ASCII()函数中,纯数字的字符串可不用‘’括起来 ...
- 字符串处理strcpy strcat函数的用法
C语言函数字符串处理strcpy strcat函数的用法: 1)strcat是用来连接两个字符串的,原型是char *strcat(char *dest,char *src),作用是把src所指字符串 ...
- 009.Python字符串相关函数
字符串相关函数 1 capitalize 字符串首字母大写 strvar = "this is a dog" res = strvar.capitalize() print(res ...
- 字符串操作函数<string.h>相关函数strcpy,strcat,等源码。
首先说一下源码到底在哪里找. 我们在文件中包含<cstring>时,如果点击右键打开文档, 会打开cstring,我们会发现路径为: D:\Program Files\visual stu ...
随机推荐
- 关于webpack 以及 webpack配置和常用插件的学习记录 (1)
主要概念: Entry : webpack的入口,构建的第一步从entry开始. Output : 输出,经过webpack处理后的得到最终想要的代码. Loader : 模块转换工具,把 ...
- [转] 最简单实现跨域的方法:使用nginx反向代理
[From] http://blog.jobbole.com/90975/ 什么是跨域 跨域,指的是浏览器不能执行其他网站的脚本.它是由浏览器的同源策略造成的,是浏览器对javascript施加的安全 ...
- linux下安装使用虚拟环境
一.导语 在使用 Python 开发的过程中,工程一多,难免会碰到不同的工程依赖不同版本的库的问题: 亦或者是在开发过程中不想让物理环境里充斥各种各样的库,引发未来的依赖灾难. 此时,我们需要对于不同 ...
- Python BeautifulSoup库的用法
BeautifulSoup是一个可以从HTML或者XML文件中提取数据的Python库,它通过解析器把文档解析为利于人们理解的文档导航模式,有利于查找和修改文档. BeautifulSoup3目前已经 ...
- 安装软件或运行软件时提示缺少api-ms-win-crt-runtime库解决方法
最近碰到一个问题,在我软件安装或运行时会提示缺少api-ms-win-crt-runtime-|1-1-0.dll 当然第一个想到的是运行库没有装,但是很清楚的是我的电脑是装过vc_redist_20 ...
- Oracle 更改归档文件到ASM磁盘
01,配置磁盘路径
- (转)Cobbler无人值守批量安装Linux系统
本文目录: 1.1 pxe安装系统 1.2 cobbler基本介绍 1.3 安装和配置cobbler 1.3.1 安装cobbler 1.3.2 配置dhcp和tftp 1.4 cobbler从本地光 ...
- cloudemanager安装时出现failed to receive heartbeat from agent问题解决方法(图文详解)
不多说,直接上干货! 安装cdh5到最后报如下错误: 安装失败,无法接受agent发出的检测信号. 确保主机名称正确 确保端口7182可在cloudera manager server上访问(检查防火 ...
- unity消息队列
解决一些当一些消息事件需要处理时,但是 相应的系统还没有初始化来解决的问题 每个系统执行层也有一个消息队列,这样系统没有做好初始化,不执行就好了. 参考:http://blog.csdn.net/ws ...
- IDEA 14.0 (默认模式) 快捷键
IDEA 14.0 (默认模式) 快捷键 1.Alt+Shift+R:重命名变量名.类名.方法名(使用已经使用过的) 2.Ctrl+O :重写方法 3.Alt+Shift+P :实现接口 4.Alt+ ...