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这个调试 ...
随机推荐
- Android之使用AchartEngineActivity引擎绘制柱状图、曲线图
1.简介 AChartEngine(简称ACE)是Google的一个开源图表库(for Android).它功能强大,支持散点图.折线 .关于里面类的具体使用,请下载响应的文档说明(主页上有). 2. ...
- iOS开发——实用篇Swift篇&保存图片到相册
保存图片到相册 最近在深入的学习关于swift相关技术,虽然海做不出什么好的东西,但是感觉收获不少,相信总有一样能用到,所以就总结了一下,希望大家喜欢! 1.OC中的写法 在OC中,我们需要保存图片到 ...
- javascript操作
1. >> 按位右移运算符 result = expression1 >> expression2 右移表达式的位,保持符号不变. >> 运算符将 expressi ...
- Seconds_Behind_Master
http://blog.chinaunix.net/uid-28212952-id-3494560.html 今天同事遇到一个故障,xtrabackup备份中flush tables with rea ...
- [转]UINavigationController 返回的方法汇总
[html] view plaincopy [self.navigationController popViewControllerAnimated:YES]; UINavigationControl ...
- 如何删除google流氓扩展(强制安装,并且无权限删除)
chrome现在也是流氓遍地跑, 没比IE安全到哪里. TubeAdblocKer 这个流氓扩展,强制安装,无法删除.google了一大堆方法,全部无效.祭出了filelocator这个神器之后,终于 ...
- 关于 未能加载文件或程序集“MySql.Web, Version=6.7.4.0, Culture=neutral, PublicKeyToken=c5687fc88969c44d”或它的某一个依赖项。系统找不到指定的文件。
我这个项目是MVC4的,有两个版本,第一个版本直接运行没什么问题,但是跑第二个版本的时候就给我提示这个错误.好吧,百度果然是万能的.下边是解决方案. 1.找到 C:\Windows\Microsoft ...
- cocos2d-x调度器原理
程序运行后每达到一帧的时间间隔就会执行一次mainLoop void CCDisplayLinkDirector::mainLoop(void) { //判断是否需要释放CCDirector,通常游戏 ...
- [JavaEE,MVC] Struts工作原理
基本概念 Struts是Apache 基金会Jakarta 项目组的一个Open Source 项目,它采用MVC模式,能够很好地帮助java 开发者利用J2EE开发Web应用.和其他的java架构一 ...
- Android(java)学习笔记116:PC_Phone通信程序报错
1.首先我写的程序代码如下: package com.himi.udpsend; import java.net.DatagramPacket; import java.net.DatagramSoc ...