十二、字符串(2)——字符串函数

1、单字符输入输出,用 putchar 和 getchar

int putchar(int c);
//向标准输出写一个字符
//返回写了几个字符,EOF(-1)表示写失败
int getchar(void);
//从标准输入读入一个字符
//返回类型是int是为了返回EOF(-1);

//Windows ——> Ctrl-Z
//Unix  ——> Ctrl-D
标准库中的字符函数
#include<string.h>
strlen、strcmp、strcpy、strcat、strchr、strstr

2、字符串函数strlen

size_t  strlen(const  char*s)
//返回s的字符串长度(不包括结尾的0)

3、字符串函数strcmp

int  strcmp(const  char *s1,const  char *s2);
//比较两个字符串,返回:
//       0      :s1==s2
//     >0      :  s1> s2
//     <0      :  s1< s2

4、字符串函数strcpy

char *strcpy( char  *restrict  dst,  const  char  *restrict  src);
//把src的字符串拷贝到dst
//restrict  表明  src 和 dst 不重叠(C99)
//返回dst
//为了能链起代码来
char  *dst  = (char*) malloc   (strlen(src)+1);
strcpy(dst,src);

5、字符串函数strcat

char  *strcat(char  *restrict  s1, const char  *restrict   s2);
//把s2拷贝到s1的后面,接成一个长的字符串
//返回s1
//s1必须具有足够的空间
安全问题

strcpy和strcat都可能出现安全问题

——如果目的地没有足够的空间?

安全版本
char*   strncpy(char  *restrict  dst, const char  *restrict   src, size_t  n);

char*   strncat(char  *restrict  s1, const char  *restrict   s2, size_t  n);

int   strncmp(const  char*  s1, const char* s2 , siz e_t  n);

6、字符串搜索函数

字符串中找字符
char*  strchr(const char* s, int c);
char*  strchr(const char* s, int c);
//返回NULL表示没有找到

如何寻找第2个

字符串中找字符串

原文地址:https://www.cnblogs.com/Strugglinggirl/p/9052499.html

时间: 2024-11-13 10:21:43

十二、字符串(2)——字符串函数的相关文章

初学 Python(十二)——高阶函数

初学 Python(十二)--高阶函数 初学 Python,主要整理一些学习到的知识点,这次是高阶函数. #-*- coding:utf-8 -*- ''''' 话说高阶函数: 能用函数作为参数的函数 称为高阶函数 ''' #函数作参 def f(x): return x*x #map函数为内置函数,意思为将第二个参数的list作用到f函数中 #最后的结果为一个list print map(f,[1,2,3,4,5]) #reduce函数为内置函数,意思将第二参数的序列作用到add函数值 #将结

【leetcode 简单】 第八十二题 反转字符串

编写一个函数,其作用是将输入的字符串反转过来. 示例 1: 输入: "hello" 输出: "olleh" 示例 2: 输入: "A man, a plan, a canal: Panama" 输出: "amanaP :lanac a ,nalp a ,nam A" class Solution: def reverseString(self, s): """ :type s: str :rtyp

(十二)修改字符串中的空格

一.问题描述 给定一个数组形的字符串.为了网络传输,方便通用型,需求把空格变为  %20. 二.思路和Code 1 package algorithm; 2 3 /** 4 * Created by adrian.wu on 2019/2/26. 5 */ 6 public class ReplaceSpace { 7 /* 8 先遍历,求出spaceCount数目. 9 1.设定一个指针,P1 10 2.P1指向原始string的尾部. 11 3.从后向前遍历. 12 4.P1遇到字符把字符向

剑指offer(三十二)之把字符串转换成整数

题目描述 将一个字符串转换成一个整数,要求不能使用字符串转换整数的库函数. 思路分析: 1.判断字符串是否空 2.定义一个符号位变量和结果变量,并将字符串转为字符数组 3.判断是正数,还是负数 4.判断是否是0-9之间数 代码: <span style="font-family:SimSun;font-size:18px;">public class Solution { public int StrToInt(String str) { if(str==null||str

linux平台学x86汇编(十二):字符串的存储与加载

[版权声明:尊重原创,转载请保留出处:blog.csdn.net/shallnet,文章仅供学习交流,请勿用于商业用途] 字符串的存储与加载是指,将字符串的值加载到寄存器和将其传回内存位置中.其使用指令lods指令和stos指令. lods指令用于把内存中的字符串值传送到eax寄存器中,该指令有三种不同格式:lodsb(1字节).lodsw(2字节).lodsl(4字节).lods指令使用esi寄存器作为隐含的源操作数.esi寄存器必须包含要加载的字符串所在的内存地址. 在使用lods指令把字符

mysql学习笔记之十二(存储过程和函数)

存储过程和函数,一种数据库对象,用来实现将一组关于表操作的SQL语句代码当做一个整体来执行,也是与数据库对象表关联最紧密的数据库对象.在数据库系统中,当调用存储过程和函数时,则会执行这些对象中所设置的sql语句组从而实现相应的功能. 一.存储过程和函数的相关概念 针对表的一个完整操作往往不是单条sql语句就可以实现,而是需要一组sql语句来实现. 例: 为了购买商品的订单处理: (1)在生成订单之前,首先需要查看商品库存中是否有相应的商品 (2)如果库存中存在相应的商品,按着需要预定商品以便不将

Python学习十二:高阶函数

在学习高阶函数之前需要搞清一个概念: 变量可以指向函数 意思就是:把函数名赋值给另一个变量,然后使用这个变量完成跟函数一样的功能. 如下代码所示: 将求绝对值函数abs赋值给f,然后调用f完成跟abs一样的功能. >>> f = abs >>> f(-100) 100 >>> 好了接下来看:高阶函数 定义为:一个函数接收另一个函数作为参数,这种函数就称之为高阶函数. 如下代码所示: def add(x , y , f): return f(x) + f

C++学习笔记(十二):重载函数

1. 什么是重载函数 假设同一作用域内的几个函数名字同样但形參列表不同.那么这些函数就称之为--重载函数. 比如: void print( const char *cp); void print(const int *begin , const int *end); void print(const int ia[], int size); 上面的这些构造函数运行的操作很的相似.都是打印一些数据.可是接受的形參却不一样. 当调用这些函数时,编译器会依据传递的实參类型判断想要运行的是哪个函数. 比

Oracle学习(十二):存储过程/存储函数

1.知识点 --第一个存储过程 /* 打印Hello World create [or replace] PROCEDURE 过程名(參数列表) AS PLSQL子程序体: 调用存储过程: 1. exec sayHelloWorld(); 2. begin sayHelloWorld(); sayHelloWorld(); end; / */ create or replace procedure sayHelloWorld<span style="white-space:pre"

wxWidgets第十二课 wxBufferedPaintDC OnPaint函数中的双缓存DC

说明 当使用DC进行图形渲染的过程中,会出现闪烁的问题,主要是图形是实时渲染的,如果先渲染在一块内存中,然后渲染完毕之后,才一次性贴图到屏幕上,就可以避免闪烁的问题.因此引入wxBufferedPaintDC.wxBufferedPaintDC继承自wxBufferedDC,wxPaintDC是其私有成员变量,因此该类只能够在wxPaintEvent事件中使用,也就是只能在OnPaint( wxPaintEvent& event )函数中使用. 为了使用该类,需要包含头文件#include &qu