字符串相关函数-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 ...
随机推荐
- 1091 N-自守数 (15 分)
如果某个数 K 的平方乘以 N 以后,结果的末尾几位数等于 K,那么就称这个数为“N-自守数”.例如 3×922=25392,而 25392 的末尾两位正好是 92,所以 92 是一个 3-自守 ...
- offset、client、scroll、screen的自己理解
body是DOM对象里的body子节点,即 <body> 标签: documentElement 是整个节点树的根节点root,即<html> 标签: window.scree ...
- 用 fmt格式化候时间
<%@ taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt" %> <div ...
- Python 字典的取值
不能用.取值 .是获取属性或方法 只能用中括号或者get方法 中括号和get中可以放字符串或者变量 get与[]的区别在于当key不存在,get不会报错,而且get可以设置取不到值时返回的默认值.
- 两种请求方式URLHttpconnection 和Httpclient提交表单 网络篇(二)
安卓有两种发送请求的方式:URLHttpconnection 和Httpclient 下面就来讲下这两种方式,这篇是最基础的使用 进阶请看第二篇 先占位 打扫卫生去了T T 快过年了 框架就放网络篇 ...
- Ace教你一步一步做Android新闻客户端(四) 优化Bitmap大法
我计划着把需要用到的知识分解开来写,趁着我们要开发这款客户端的机会把安卓所有移动客户端开发中的技术贯穿其中,也是我自己成长的过程.By Ace in 20160121 我们开发一款新闻客户端程序,它的 ...
- 中文输入法无法在 QtCreator(Linux) 中输入汉字
中文输入法无法在 QtCreator(Linux) 中输入汉字 环境 system: Deepin 15.7 Qt Creator 4.7.0 (GCC 5.3.1) 解决方法 下载 fcitx-qt ...
- bzoj 5329: [Sdoi2018]战略游戏
Description 省选临近,放飞自我的小Q无心刷题,于是怂恿小C和他一起颓废,玩起了一款战略游戏. 这款战略游戏的地图由n个城市以及m条连接这些城市的双向道路构成,并且从任意一个城市出发总能沿着 ...
- RegExp正则表达式内容
在线测试工具:http://leaverou.github.io/regexplained/ RegExp 对象表示正则表达式,它是对字符串执行模式匹配的强大工具. 直接量语法:/pattern/at ...
- 深入理解JavaScript系列(29):设计模式之装饰者模式
介绍 装饰者提供比继承更有弹性的替代方案. 装饰者用用于包装同接口的对象,不仅允许你向方法添加行为,而且还可以将方法设置成原始对象调用(例如装饰者的构造函数). 装饰者用于通过重载方法的形式添加新功能 ...