Linux C 程序 字符串函数(12)
字符串函数
C语言的字符串处理函数
1.puts函数
//把一个以'\0'结尾的字符串输出到屏幕 char a[] = "Welcome to"; char *p = "Linux C Program"; puts(a); puts(p);
2.gets函数
//从终端输入一个字符数组,返回字符数组的首地址 ]; gets(string); puts(string); //warning: the `gets' function is dangerous and should not be used. //系统不推荐使用gets方法了,危险
3.strcpy和strncpy
#include<string.h> char *strcpy(char *dest , char *src); char *strncpy(char *dest , char *src ,int n);//复制前n个字符 //strcpy是string copy缩写,使用这两个函数必须包含string.h,返回值都是dest //复制时连同'\0'一起被复制
复制错误代码示范:
]; b = a ; //字符串复制只能使用strcpy等类似功能的函数
strcpy不安全,容易被黑客利用,一般用strncpy
示例代码:
char *s = "hello worlg"; ],d2[]; strcpy(d1,s); strncpy(d2,s,sizeof(s)); // //strncpy复制不完全。。。
4.strcat 和strncat
#include<string.h> char *strcat(char *dest , char *src); char *strncat(char *dest , char *src ,int n);//复制前n个字符 //把输入的src追加到dest的尾部 //strcat不安全
5.strcmp 和 strncmp
#include<string.h> char *strcmp(char *s1 , char *s2);//比较两个字符串 char *strncmp(char *s1 , char *s2 ,int n);//比较前n字符串 //第一次出现不同字符时,s1-s2的差值为返回值
6.strlen
#include< //返回字符串的实际长度,不会包括结束符'\0',sizeof(s)的计算会包含结束符
7.strlwr 和 strupr//string lower 和string upper的缩写
8.strstr 和 strchr
#include<string.h>
char *strstr(char *s1 , char *s2);//s1中寻找s2,返回首次出现指向s2位置的指针,没有找到返回NULL
char *strchr(char *s1 , char c);//s1寻找c首次出现的位置,返回指针,没有返回NULL
//----
#include<stdio.h>
#include<string.h>
int main(){
char *s1 = "Liunx C Program",*s2="unx",*p;
p = strstr(s1,s2);
if(p != NULL){
printf("%s\n",p);
}else{
printf("not found !");
}
p= strchr(s1,'C');
if(p != NULL){
printf("%s\n",p);
}else{
printf("not found!");
}
;
}
Linux C 程序 字符串函数(12)的更多相关文章
- Linux C 程序 字符串运算符-表达式(TWO)
1.字符串常量 双引号"" :eg:"china" ,字符串在存储的时候会以一个\0为结束标志.2.符号常量 ,给常量取一个名字. #include< ...
- 【Linux C中文函数手册】之 内存和字符串函数
内存和字符串函数 1) bcmp 比较内存内容 相关函数 bcmp,strcasecmp,strcmp,strcoll,strncmp,strncasecmp表头文件 #include<stri ...
- Linux下常用函数-字符串函数
inux下常用函数-字符串函数 atof(将字符串转换成浮点型数) 相关函数 atoi,atol,strtod,strtol,strtoul 表头文件 #include <stdlib ...
- C语言字符串函数例子程序大全 – string相关
关于字符串函数的应用细则,例子程序 – jerny 函数名: stpcpy 功 能: 拷贝一个字符串到另一个 用 法: char *stpcpy(char *destin, char *source) ...
- 【转】在嵌入式Linux和PC机Linux下使用popen函数时,程序运行结果有差异。
下面程序演示了在嵌入式Linux和PC机Linux下使用popen函数时,程序的运行结果是有差异的. 两个程序 atest.c 和 btest.c,atest 检查是否有 btest 进程运行,如果没 ...
- 前端学PHP之字符串函数
× 目录 [1]特点 [2]输出 [3]空格[4]大小写[5]HTML[6]格式化[7]比较 前面的话 字符串的处理和分析在任何编程语言中都是一个重要的基础,往往是简单而重要的.信息的分类.解析.存储 ...
- Linux应用程序的地址布局
转载自:http://blog.csdn.net/embedded_hunter http://www.360doc.com/content/12/0405/00/1671317_200882538. ...
- gcc 头文件是用户应用程序和函数库之间的桥梁和纽带 功能的真正逻辑实现是以硬件层为基础
gcc GCC, the GNU Compiler Collection - GNU Project - Free Software Foundation (FSF) http://gcc.gnu.o ...
- Linux GDB程序调试工具使用简单介绍
GDB概述 GDB是GNU开源组织公布的一个强大的UNIX下的程序调试工具.也许,各位比較喜欢那种图形界面方式的,像VC.BCB等IDE的调试,但假设你是在UNIX平台下做软件,你会发现GDB这个调试 ...
随机推荐
- Ajax条用WebService 5星级
转:http://www.cnblogs.com/frozenzhang/p/ajax.html 随笔- 2 文章- 0 评论- 5 $.ajax()调用webservice 常规请求基本格式 [ ...
- openstack 创建虚拟机
http://blog.csdn.net/tantexian/article/details/44595885#comments
- 文件尾存在EOF吗?
参考:http://bbs.csdn.net/topics/290027166 我們先一起來看看FILE是怎么定義的: FILE <STDI ...
- 1050. String Subtraction (20)
this problem is from PAT, which website is http://pat.zju.edu.cn/contests/pat-a-practise/1050. firs ...
- Redis 客户端连接
Redis 通过监听一个 TCP 端口或者 Unix socket 的方式来接收来自客户端的连接,当一个连接建立后,Redis 内部会进行以下一些操作: 首先,客户端 socket 会被设置为非阻 ...
- Android Service与Activity之间通信的几种方式
在Android中,Activity主要负责前台页面的展示,Service主要负责需要长期运行的任务,所以在我们实际开发中,就会常常遇到Activity与Service之间的通信,我们一般在Activ ...
- 小白日记36:kali渗透测试之Web渗透-手动漏洞挖掘(二)-突破身份认证,操作系统任意命令执行漏洞
手动漏洞挖掘 ###################################################################################### 手动漏洞挖掘 ...
- 《Entity Framework 6 Recipes》中文翻译——第九章EntityFramework在N层架构程序中的应用(七)
在WCF服务中的序列化代理 问题 您有一个从查询返回的动态代理对象,你想要把它像POCO对象已经进行序列化.在序列化基于实体对象的POCO(普通旧CLR对象)时,实体框架会自动生成一个动态生成的派生类 ...
- Debian apt-get 无法补全
今天发现在终端里输入apt-get inst后按Tab键无法自动补全成 install,纳闷之余google了一下(我承认开始是baidu...),原来是没有安装 bash-completion. s ...
- ArcGIS Server 10.2 实战(三)图层标注及图例中文显示乱码的解决
发布的图层中不可避免的使用到中文来标注,默认设置下,ArcGIS Server不支持中文的,中文标注显示成乱码,主要是编码的问题,需要把手动把编码改为UTF-8. ArcGIS Server 10.2 ...