每日一练(三十七)

2023-11-16


《每日一练合集》

3.1 求字符串的子串个数

在这里插入图片描述

3.2 判断程序输出

在这里插入图片描述

3.3 strlen 实现

int strlen(const char *str)
{
    assert(str != NULL);
    int count = 0;
    while (*str++ != NULL) {
        ++count;
    }
    return count;
}

用来判断字符串的长度,以结束符NULL为标志。

3.4 strcmp 实现

int strcmp(const char *str1, const char *str2)
{
    assert(str1 != NULL && str2 != NULL);
    int ret = 0;
    //通过字符的ASCII相减之后的值来判断,同时判断str1是否结束
    while (!(ret = *(unsigned char *)str1 - *(unsigned char *)str2) && 
            *str1) {
        ++str1;
        ++str2;
    }
    if (ret < 0) ret = -1;
    else if (ret > 0) ret = 1;
    return ret;  //相等返回0
}

strcmp用来比较两个字符串的长度:

若str1 > str2,返回1

若str1 = str2,返回0

若str1 < str2,返回-1

3.5 strcat 实现

char *strcat(char *dest, const char *src)
{
    assert(dest != NULL && src != NULL);
    char *p = dest;
    while (*p++ != NULL);
    p = src;
    while ((*p++ = *src++) != NULL);
    return dest;
}

strcat用来将一个字符串连接在另一个字符串后面,覆盖掉前一个字符串的‘\0’,并在最后添加‘\0’。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

每日一练(三十七) 的相关文章

  • 数据结构与算法书籍推荐

    学习数据结构与算法 还是很有必要看几本相关的书籍 但根据不同基础的人 合适看的书也不一样 因此 针对不同层次 不同语言的人 推荐几本市面上口碑不错的书 1 入门级 针对刚入门的同学 建议不要急着去看那些经典书 像 算法导论 算法 这些比较经
  • 【Leetcode】151. 翻转字符串里的单词

    题目描述 给你一个字符串 s 逐个翻转字符串中的所有 单词 单词 是由非空格字符组成的字符串 s 中使用至少一个空格将字符串中的 单词 分隔开 请你返回一个翻转 s 中单词顺序并用单个空格相连的字符串 说明 输入字符串 s 可以在前面 后面
  • 以太坊系列之十五: 以太坊数据库

    以太坊数据库中都存了什么 以太坊使用的数据库是一个NOSQL数据库 是谷歌提供的开源数据leveldb 这里尝试通过分析以太坊数据库存储了什么来分析以太坊可能为我们提供哪些关于区块链的API 存储内容 NOSQL是一个key value数据
  • html 中的正则(基础)

    正则表达式 1 什么是 正则表达式就是专门规定一个字符串中字符出现的规律的一套规则 2 何时 2大类场景 a 验证字符串格式 b 查找敏感词 如何在js中创建正则表达式 用于查找和匹配 2种 1 标准写法 a var 变量 new RegE
  • 数据结构——计算节点个数和二叉树高度(C语言版)

    摘自 数据结构 计算节点个数和二叉树高度 C语言版 作者 正弦定理 发布时间 2020 12 12 23 27 09 网址 https blog csdn net chinesekobe article details 111086664
  • Unique Binary Search Trees -- LeetCode

    原题链接 http oj leetcode com problems unique binary search trees 这道题要求可行的二叉查找树的数量 其实二叉查找树可以任意取根 只要满足中序遍历有序的要求就可以 从处理子问题的角度来
  • 数学(五) -- LC[415]&[455] 字符串相加与两数相加

    1 字符串相加 1 1 题目描述 给定两个字符串形式的非负整数 num1 和num2 计算它们的和并同样以字符串形式返回 你不能使用任何內建的用于处理大整数的库 比如 BigInteger 也不能直接将输入的字符串转换为整数形式 示例 1
  • qt 开发遇到的坑

    1 QString的toString 和toWString 引起的win32位release 下std string的析构崩溃 代码 QString qs std string str qs toStdString const wchar
  • 人工智能概念

    人工智能概念 人工智能就是用人工方法在机器 计算机 上实现的智能 或称机器智能 即是研究如何用计算机来表示和执行人类的智能活动 以模拟人脑所从事的推理 学习 思考和规划等思维活动 并解决需要人类的智力才能处理的复杂问题 如医疗诊断 管理决策
  • 机器学习算法GBDT的面试要点总结-上篇

    1 简介 gbdt全称梯度提升决策树 在传统机器学习算法里面是对真实分布拟合的最好的几种算法之一 在前几年深度学习还没有大行其道之前 gbdt在各种竞赛是大放异彩 原因大概有几个 一是效果确实挺不错 二是即可以用于分类也可以用于回归 三是可
  • 区块链中的哈希算法

    区块链中的密码学 密码学在区块链中的应用主要有两个 哈希算法与非对称加密算法 这次主要对哈希算法进行详细的说明 哈希算法 哈希算法的特点有 1 输入可以为任意大小的字符串 2 产生固定大小的输出 3 可以在合理的时间内算出输出值 若要满足密
  • 雪糕的最大数量 排序+贪心

    雪糕的最大数量 雪糕的最大数量 题目描述 样例 数据范围 思路 代码 题目描述 夏日炎炎 小男孩 Tony 想买一些雪糕消消暑 商店中新到 n 支雪糕 用长度为 n 的数组 costs 表示雪糕的定价 其中 costs i 表示第 i 支雪
  • 如何复制包含“\0”字符的数据

    我正在尝试复制包含 0 的数据 我正在使用 C 当研究结果是否定的时 我决定编写自己的函数来将数据从一个 char 复制到另一个 char 但它没有返回想要的结果 我的尝试如下 include
  • strcpy是如何实现的?

    我有一个关于使用 strcpy 的问题 我知道 ANSI C 标准规定 源和目标不得重叠 否则行为是不可预测的 我向您展示了一段代码 如果它是在 Linux 下使用旧的 gnu C 编译器编译的 那么它可以按我的预期工作 include
  • strcpy() 和字符串数组

    我需要将用户的输入存储到字符串数组中 include
  • 按照层次遍历结果打印完全二叉树

    按照层次遍历结果打印完全二叉树 按照推论结果 l 层首个节点位置 2 h l 1 l 层节点间距 2 h l 1 1 编码实现 public static
  • 高精度运算合集,加减乘除,快速幂,详细代码,OJ链接

    文章目录 零 前言 一 加法 高精度加法步骤 P1601 A B 二 减法 高精度减法步骤
  • 最大流-Dinic算法,原理详解,四大优化,详细代码

    文章目录 零 前言 一 概念回顾 可略过 1 1流网络 1 2流 1 3最大流 1 4残留网络 1 5增广路
  • 错误:函数返回局部变量的地址

    我是 C 初学者 正在自学 我正在创建以下函数 char foo int x if x lt 0 char a 1000 char b blah x x 1 char c foo x strcpy a b strcat a c return
  • 使用 strcpy 到 mmap 文件时出现总线错误(核心转储)

    我有一个简单的程序 int main void int fd const char text This is a test fd open tmp msyncTest O CREAT O TRUNC O RDWR S IRWXU S IRW

随机推荐

  • 娜璋初识(一)你的酒窝没有酒,我却醉得像条狗,看程序员如何表白

    这系列文章本不打算在CSDN发布 因为太腻 因为太爱 也担心读者吃不下这口狗粮 但是最近看到 情人节主题征文 活动 我俩也算是CSDN牵出的一段姻缘 索性就将该系列慢慢撰写出来 希望您喜欢 就当是程序猿的爱情周边吧 也算是对CSDN征文活动
  • 用python做一个输入半径值计算圆的面积保留两位小数_五天学会Python基础01(中)...

    语言元素 指令和程序 计算机的硬件系统通常由五大部件构成 包括 运算器 控制器 存储器 输入设备和输出设备 其中 运算器和控制器放在一起就是我们通常所说的中央处理器 它的功能是执行各种运算和控制指令以及处理计算机软件中的数据 我们通常所说的
  • Linux 自带的LED 灯驱动实验

    目录 Linux 内核自带LED 驱动使能 Linux 内核自带LED 驱动简介 LED 灯驱动框架分析 module platform driver 函数简析 gpio led probe 函数简析 设备树节点编写 运行测试 前面我们都是
  • 数学建模算法(基于matlab和python)之 Lagrange插值、Newton插值(1/10)

    实验目的及要求 1 了解多项式插值公式的存在唯一性条件及其余项表达式的推导 2 了解拉格朗日插值多项式的构造 计算及其基函数的特点 牛顿插值多项式的构造与应用 差商 差分的计算及基本性质 实验内容 1 编写Lagrange插值法 Newto
  • ctfshow-web入门——命令执行(2)(web41-web57)

    命令执行 2 web 41 if isset POST c c POST c if preg match 0 9 a z i c 过滤了数字 字母 大小写 还有一些其他符号 未过滤或运算符 和双引号 eval echo c else hig
  • Gof23设计模式之工厂方法模式和抽象工厂模式

    在java中 万物皆对象 这些对象都需要创建 如果创建的时候直接new该对象 就会对该对象耦合严重 假如我们要更换对象 所有new对象的地方都需要修改一遍 这显然违背了软件设计的开闭原则 如果我们使用工厂来生产对象 我们就只和工厂打交道就可
  • Bootstrap3 多个模态对话框无法显示的问题

    今天帮同事调了一个代码 他们的项目最近在用Bootstrap做开发 突然间 他遇到了一个奇怪的问题 如果一个页面中 有多个Modal对话框的话 排列在第一个的对话框 能够正确显示 第二个 只能导致页面出现MASK层 却不能显示Dialog
  • 数据库作业14:第五章: 数据库完整性 习题 + 存储过程

    今有以下两个关系模式 职工 职工号 姓名 年龄 职务 工资 部门号 其中职工号为主码 Worker Wno Wname Wage Wjob Wsalary Wdept 部门 部门号 名称 经理名 电话号 其中部门号为主码 Dept Dno
  • 2D Fast Marching Computations

    Fast Marching method 跟 dijkstra 方法类似 只不过dijkstra方法的路径只能沿网格 而Fast Marching method的方法可以沿斜线 Level Set Methods and Fast Marc
  • MySQL-索引详解(四)

    作者 小刘在C站 个人主页 小刘主页 每天分享云计算网络运维课堂笔记 努力不一定有回报 但一定会有收获加油 一起努力 共赴美好人生 树高千尺 落叶归根人生不易 人间真情 前言 本次MySQL 索引章节比较多 分为多篇进行发布 本章继续 链接
  • shell的字符串截取

    shell的字符串截取 这里介绍一下shell当中字符串截取的几种方法 假设有变量 var http www aaa com 123 htm 1 号截取 删除左边字符 保留右边字符 echo var 其中 var 是变量名 号是运算符 表示
  • Python学习第六天——函数(一)

    1 为什么用函数 1 代码冗余 程序组织结构不清晰 可读性差 2 扩展性差 2 如何让使用函数 原则 先定义后使用 定义不会执行 但是会检查语法错误 函数名指向内存地址存储代码信息 先通过函数名找到函数的内存地址 然后函数内存地址的 触发代
  • 使用docker安装nginx

    一 获取nginx镜像 1 获取nginx镜像列表 docker search nginx 2 拉取nginx镜像到本地 注 默认选取官方最新镜像 其它版本可以去DockerHub查询 docker pull nginx 3 查看镜像库 获
  • ROS搬运 笔记1

    图概念概述 Nodes 节点 一个节点即为一个可执行文件 它可以通过ROS与其它节点进行通信 Messages 消息 消息是一种ROS数据类型 用于订阅或发布到一个话题 Topics 话题 节点可以发布消息到话题 也可以订阅话题以接收消息
  • linux 下qt的头文件,Qt添加库文件和头文件目录(QCreator)

    在使用QtCreator开发图像处理程序的时候想加入Opencv库来处理图形 添加头文件 需要编辑工程文件夹下的 pro文件在文件中添加以下内容 即可包含头文件的文件夹 INCLUDEPATH D OpenCV2 0 vc2008 incl
  • 电脑安装Chrome OS

    原文地址 https www ithome com html win10 336501 htm 2010年12月7日 谷歌发布了一款桌面操作系统 Chrome OS 关于这款操作系统的新闻 IT之家没少报道过 相信不少读者对这款操作系统比较
  • 闪回表+查看和修改撤销表空间的信息+闪回表操作语法+闪回表的案例

    闪回表 flashback table 1将表回滚到一个过去的时间点或系统改变号scn上 用来快速恢复表的数据 2用户对表数据的修改操作 都记录在撤销表空间中 3需要使用到与撤销表空间相关的undo信息 通过show parameeter
  • 数据分析36计(19):美国生鲜配送平台【Instacart】如何实现按时配送——使用分位数回归...

    往期系列原创文章集锦 数据分析36计 18 Shopify如何使用准实验和反事实来优化产品 数据分析36计 17 Uber的 A B 实验平台搭建 数据分析36计 16 和 A B 测试同等重要的观察性研究 群组研究 VS 病例 对照方法
  • go的timer

    看程序 package main import fmt time func main time AfterFunc 3 time Second func fmt Println come here 1 timer time NewTimer
  • 每日一练(三十七)

    文章目录 3 1 求字符串的子串个数 3 2 判断程序输出 3 3 strlen 实现 3 4 strcmp 实现 3 5 strcat 实现 每日一练合集 3 1 求字符串的子串个数 3 2 判断程序输出 3 3 strlen 实现 in