返回顶部
首页 > 资讯 > 后端开发 > 其他教程 >C++怎么用Read4来读取N个字符
  • 491
分享到

C++怎么用Read4来读取N个字符

2023-06-20 18:06:03 491人浏览 独家记忆
摘要

这篇文章主要讲解了“c++怎么用Read4来读取N个字符”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“C++怎么用Read4来读取N个字符”吧!用Read4来读取N个字符这道题给了我们一个

这篇文章主要讲解了“c++怎么用Read4来读取N个字符”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“C++怎么用Read4来读取N个字符”吧!

用Read4来读取N个字符

这道题给了我们一个 Read4 函数,每次可以从一个文件中最多读出4个字符,如果文件中的字符不足4个字符时,返回准确的当前剩余的字符数。现在让实现一个最多能读取n个字符的函数。这题有迭代和递归的两种解法,先来看迭代的方法,思路是每4个读一次,然后把读出的结果判断一下,如果为0的话,说明此时的 buf 已经被读完,跳出循环,直接返回 res 和n之中的较小值。否则一直读入,直到读完n个字符,循环结束,最后再返回 res 和n之中的较小值,参见代码如下:

解法一:

// Forward declaration of the read4 api.int read4(char *buf);class Solution {public:    int read(char *buf, int n) {        int res = 0;        for (int i = 0; i <= n / 4; ++i) {            int cur = read4(buf + res);            if (cur == 0) break;            res += cur;        }        return min(res, n);    }};

下面来看递归的解法,这个也不难,对 buf 调用 read4 函数,然后判断返回值t,如果返回值t大于等于n,说明此时n不大于4,直接返回n即可,如果此返回值t小于4,直接返回t即可,如果都不是,则直接返回调用递归函数加上4,其中递归函数的 buf 应往后推4个字符,此时n变成n-4即可,参见代码如下:

解法二:

// Forward declaration of the read4 API.int read4(char *buf);class Solution {public:    int read(char *buf, int n) {        int t = read4(buf);        if (t >= n) return n;        if (t < 4) return t;        return 4 + read(&buf[4], n - 4);    }};

感谢各位的阅读,以上就是“C++怎么用Read4来读取N个字符”的内容了,经过本文的学习后,相信大家对C++怎么用Read4来读取N个字符这一问题有了更深刻的体会,具体使用情况还需要大家实践验证。这里是编程网,小编将为大家推送更多相关知识点的文章,欢迎关注!

--结束END--

本文标题: C++怎么用Read4来读取N个字符

本文链接: https://lsjlt.com/news/299168.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
  • C++怎么用Read4来读取N个字符
    这篇文章主要讲解了“C++怎么用Read4来读取N个字符”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“C++怎么用Read4来读取N个字符”吧!用Read4来读取N个字符这道题给了我们一个 ...
    99+
    2023-06-20
  • C++实现LeetCode(157.用Read4来读取N个字符)
    [LeetCode] 157. Read N Characters Given Read4 用Read4来读取N个字符 Given a file and assume that yo...
    99+
    2024-04-02
  • C++实现LeetCode(158.用Read4来读取N个字符之二 - 多次调用)
    [LeetCode] 158. Read N Characters Given Read4 II - Call multiple times 用Read4来读取N个字符之二 - 多次...
    99+
    2024-04-02
  • C++中怎么利用LeetCode读取N个字符
    这期内容当中小编将会给大家带来有关C++中怎么利用LeetCode读取N个字符,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。[LeetCode] 158. Read N Characters Given ...
    99+
    2023-06-20
  • php怎么读取字符串后几个字符
    本教程操作环境:windows7系统、PHP7.1版、DELL G3电脑在php中,可以使用substr()函数来读取字符串后几个字符。substr() 函数返回字符串的一部分。只需要将省略该函数的第三个参数,并设置第二...
    99+
    2016-05-17
    php字符串 php
  • c语言怎么读取字符串
    C语言中可以使用`scanf`函数来读取字符串。`scanf`函数可以读取输入流中的字符串,并将其存储到指定的变量中。以下是一些常见...
    99+
    2023-09-21
    c语言
  • c语言怎么用getchar读取字符串
    在C语言中,可以使用`getchar()`函数逐个读取字符来读取字符串。 以下是一个示例代码,演示了如何使用`getcha...
    99+
    2023-10-28
    c语言
  • php中怎么逐个字符读取文件
    这期内容当中小编将会给大家带来有关php中怎么逐个字符读取文件,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。设置字符编码。打开文件,判断文件是否打开成功。循环读取文件内容。关闭文件。header(&quo...
    99+
    2023-06-20
  • 怎么用getchar读取一串字符
    要使用getchar函数读取一串字符,可以通过循环来依次读取每个字符并将其存储在数组或字符串中,直到遇到换行符或结束符为止。下面是一...
    99+
    2023-08-31
    getchar
  • mysql中怎么读取一个字符串长度
    mysql中读取一个字符串长度的示例:mysql> select * from test;+----+------------+-------+-----------+| i...
    99+
    2024-04-02
  • php怎么截取字符串从0到第N位的字符
    3种方法:1、用substr(),将第二个参数设为0,第三个参数设为N即可,语法“substr(字符串,0,N)”。2、用mb_substr(),将第二个参数设为0,第三个参数设为N即可,语法“mb_subst...
    99+
    2022-08-16
    php php字符串
  • java中怎么用datainputstream读取字符串
    在Java中,您可以使用DataInputStream的readUTF()方法来读取字符串。下面是一个示例代码: import ja...
    99+
    2023-10-26
    java
  • 怎么用C++实现文件逐行读取与字符匹配
    今天小编给大家分享一下怎么用C++实现文件逐行读取与字符匹配的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。技术背景用惯了py...
    99+
    2023-07-05
  • C语言怎么读取长字符并显示ASCII码
    这篇文章主要介绍“C语言怎么读取长字符并显示ASCII码”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“C语言怎么读取长字符并显示ASCII码”文章能帮助大家解决问题。本实例通过一些更改可以一次读取长...
    99+
    2023-06-17
  • C#怎么截取字符串
    这篇文章主要介绍“C#怎么截取字符串”,在日常操作中,相信很多人在C#怎么截取字符串问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”C#怎么截取字符串”的疑惑有所帮助!接下来,请跟着小编一起来学习吧!C#截取字...
    99+
    2023-06-17
  • python怎么读取文件字符数
    使用python读取文件字符数的方法:1.新建python项目;2.使用open()函数打开文件;3.使用read()方法读取文件内容;4.使用len()函数获取字符数;具体步骤如下:首先,打开python,并新建一个python项目;py...
    99+
    2024-04-02
  • 怎么使用Golang去除字符串中的n字符
    本篇内容介绍了“怎么使用Golang去除字符串中的n字符”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!对于 Golang 开发者来说,使用 ...
    99+
    2023-07-05
  • 怎么用C语言strlen函数实现读取字符串长度
    今天小编给大家分享一下怎么用C语言strlen函数实现读取字符串长度的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。1、函数s...
    99+
    2023-06-30
  • c语言怎么读入字符串
    c语言中读入字符串可以使用scanf或gets函数。1. scanf函数按字符串格式读取用户输入,直到遇到空格或换行符。2. gets函数读取用户输入的整个行,包括空格和换行符,但可能会...
    99+
    2024-05-13
    c语言
  • C#怎么获取子字符串
    本篇内容介绍了“C#怎么获取子字符串”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!实例using System;namespace...
    99+
    2023-06-17
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作