Loading [MathJax]/jax/output/CommonHTML/config.js
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >逐字读取文件并比较C语言中的字符

逐字读取文件并比较C语言中的字符
EN

Stack Overflow用户
提问于 2016-12-08 05:47:03
回答 1查看 932关注 0票数 0

我有一个小程序,它逐字读取文本文件,并检查该文件是否包含某些值。

如果它在另一个字母旁边找到字母A,我希望该文件将第二个字母推送到一个新行并打印结果。例如,如果我有以下文本文件:

ABABAAAB

印刷结果如下:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
A
B
A
B
A
A
A
B

我是否需要将正在读取的当前字符存储在一个变量中,比如"prevChar“,然后在一个名为"currentChar”的变量中记录下一个字符,然后比较它们并打印结果?继续为每个角色这么做?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2016-12-08 06:05:20

您可以使用一个bool变量(比如boolean newLine = false; )来完成此操作,初始化为false。这将是一个指示器,让你知道最后一个角色是否是A。

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
 boolean newLine = false;
    FILE *fp;
    int c;

    fp = fopen("datafile.txt", "w");

    while((c = fgetc(fp)) != EOF) {
        if (newLine) {
            // Here you put char in new line
            if (c == 'A'){
                newLine = true;
            }
            else {
                newLine = false;
            }
        }
    }

    fclose(fp);
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/41041046

复制
相关文章
c语言中字符串比较的库函数是什么_c语言比较字符串大小
在 单片机串口实现字符串命令解析 这篇文章中分析了在串口通信中如何去解析字符串命令,这篇文章就来讨论下字符串比较的方法都有哪些?
全栈程序员站长
2022/11/17
2K0
c语言中字符串比较的库函数是什么_c语言比较字符串大小
C语言中的字符处理
C语言中,提供的字符为 char,通常情况下,char 为 unsigned char,即无符号字符,表示单个字符,对于多个字符(字符串),C没有提供相应的类型进行处理,但可以采用字符数组或字符指针进行处理。
鲁郭大侠
2020/03/03
5.3K0
C# 简单读取文件 读取文件为二进制读取文件为字符串
如果有找到比我上面代码更少的方法请告诉我,这里不用安装第三方的库,是在快速创建新的项目进行测试
林德熙
2019/03/13
2.7K0
json文件的读取_c语言文件读取
JSON 是 JS 对象的字符串表示法,它使用文本表示一个 JS 对象的信息,本质是一个字符串。有关于json的相关信息,可参考:json百度百科。
全栈程序员站长
2022/11/07
5.6K0
json文件的读取_c语言文件读取
java按字节、字符、行、随机读取文件,并设置字符编码格式
inputStream:是字节输入流的所有类的超类,是一个抽象类;返回0-225内的字节值,如果没有字节可以读取则返回-1;
全栈程序员站长
2022/06/30
1.4K0
C++基础——文件逐行读取与字符匹配
用惯了python,对其他语言就比较的生疏。但是python很多时候在性能上比较受局限,这里尝试通过C++来实现一个文件IO的功能,看看是否能够比python的表现更好一些。关于python的类似功能的实现,可以参考这一篇博客。
DechinPhy
2021/05/21
1.7K0
[PHP] 读取大文件并显示
使用PHP读取日志文件,当文件比较大的时候,会报内存不足,因此应该部分读取,读取指定的行数的数据
唯一Chat
2019/09/10
1.2K0
[PHP] 读取大文件并显示
c#8内插逐字字符串增强功能
在C#8中微软将内插逐字字符串功能进行了增强,虽说是增强我觉得只能算是增强了开发人员体验。下面我们就来看一下具体怎么增强了。 在C#8以前,我们要使用内插逐字字符串只能这么用:
喵叔
2020/09/08
3910
[日常] C语言中的字符数组和字符串
c语言字符数组和字符串: 1.存放字符的数组称为字符数组 char str[] 2.'\0'也被称为字符串结束标志 3.由" "包围的字符串会自动在末尾添加'\0' 4.逐个字符地给数组赋值并不会自动添加'\0' 5.局部变量初始化为零值会自动添加结束标志 6.直接使用一个指针指向字符串的形式 char* str 7.最根本的区别是在内存中的存储区域不一样,字符数组存储在全局数据区或栈区,第二种形式的字符串存储在常量区。全局数据区和栈区的字符串(也包括其他数据)有读取和写入的权限,而常量区的字符串(也包括其他数据)只有读取权限,没有写入权限。
唯一Chat
2019/09/10
2.4K0
C#读取Excel文件,并保存为文本文件
using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Linq; using System.Text; using System.Threading.Tasks; using System.Windows.Forms;
用户8671053
2021/11/03
1.3K0
C语言中的字符串处理
•字符串字面量(字符串常量,在C标准中称为,字符串字面量)如何存储字符串字面量  从本质上而言,C/C++
Java架构师必看
2021/03/22
1.1K0
读取excel文件并打印(python)
声明:本文为原创,作者为 对弈,转载时请保留本声明及附带文章链接:http://www.duiyi.xyz/c%e5%ae%9e%e7%8e%b0%e9%9b%b7%e9%9c%86%e6%88%98%e6%9c%ba-70/
对弈
2019/09/04
2.2K0
python读取txt文件并画图[通俗易懂]
请以第一列为x轴,第二列为y轴画图 步骤如下: 1)使用readlines读取文件 2)建立两个空列表X,Y,将第一列的数字放入X,第二列的数字放入Y中 3)以X,Y为轴画图 实现如下:
全栈程序员站长
2022/07/23
4K0
python读取txt文件并画图[通俗易懂]
java 读取字符串文件_Java读取文件为字符串
有时在处理文件时,我们需要将文件读取为Java中的String。下面学习如何将文件读取到Java中的String的几种方法。
全栈程序员站长
2022/09/17
1.2K0
从Ndom语浅谈语言中的进制
这题粗看复杂,其实不然。首先不难看出,abo、an并不是数字,所以不是加法就是乘法。因为abo出现的十分多,所以我们可以简单地假设abo是加法。接下来需要确定进制。我们知道1-10的乘方之间,出现了三个单独的词。不难得出,肯定1个是1,一个是基数的平方。除了这两个,只剩一个单独的词,那么这个词只可能是2^2=4。由此我们可以确定,Ndom语言的数字表达的基数肯定大于4且小于9。因为nif为很多长词的开头,所以nif应该是基数的平方。在题2的等式我们发现meregh乘上sas结尾的词,结果竟然还是以meregh尾!所以很明显sas就是1,于是thonith就是4。接着找,就找到了余下几个小于基数的词(于abo、an之后的较小):ithin、meregh、thef(可能是2、3、5)。剩下的mer、nif、tondor估计就是基数的倍数了,通过观察nif abo tondor abo mer abo thonith,发现nif>tondor>mer。按照推论,mer abo ithin应该是第三小的数字——9,那么mer应该就是基数了。ithin肯定不是1、4,所以排除5、8进制可能。那么就只剩下6、7进制两种可能了。分析得mer an thef abo thonith是第4小的,即16。mer*thef+4=16⇒mer*thef=12。所以只有一种可能:Ndom语言的数字是6进制。所以mer为6,thef为2,nif是mer的平方即36,ithin是9-6=3。排除法得,meregh是5。最后还有一个tondor,通过推断tondor abo mer abo sas≥6*2+6+1=19最近的平方数是25,可以判断tondor是18。至此,我们已经推断完成所有的词。剩下就是一些小小的规则,比如表示72,并不是nif an thef,而是直接nif thef。还有就是大的数字一定会在前。所以我们就能写出:58=36+18+4也就是nif abo tondor abo thonith,而87=36*2+6*2+3即nif thef abo mer an thef abo ithin。参考答案:
KAAAsS
2022/01/13
11.1K0
从Ndom语浅谈语言中的进制
C语言中的字符串操作分析
C语言中关于字符串的函数很多,并单独建立一个基于字符串操作的头文件,string.h。
鲁郭大侠
2020/03/12
1.1K0
数据库读取速度与文件IO读取速度比较
本文来源于之前做的一个小程序科技爱好者周刊在文章数据存储上的技术选型思考。 当时想着后期把文章 markdown 文件内容迁移到云数据库通过云函数查询出来显示。后来想想为什么非要这么做呢,数据库存取就一定好吗??
薛定喵君
2020/10/23
3K0
C语言中基于“*”字符的打印程序分析
    *              ***          *****       *******   *********   *******      *****         ***            *          
鲁郭大侠
2020/03/12
1.6K0
谈谈C语言中的字符与ASCII码
C语言中 char 数据类型 一般是一个字节(八位)的整数类型。char 数据类型只可能容纳一个字符,所谓的字符,可以理解为键盘上的按键,例如字母、数字、加减乘除、空格等。char 数据类型在C语言中需要用英文单引号引用字符,例如:char ch = 'A' 。char 数据类型 需要用占位符 %c 输入和输出。
程序员小顺
2021/10/13
1.2K0
点击加载更多

相似问题

读取文件,逐行,逐字符读取C

20

Java -逐字符读取文件字符并计算行数

25

C++逐字符读取

20

如何读取西班牙编码的文件并逐字符存储?

13

读取C语言中的文件并拆分字符串

10
添加站长 进交流群

领取专属 10元无门槛券

AI混元助手 在线答疑

扫码加入开发者社群
关注 腾讯云开发者公众号

洞察 腾讯核心技术

剖析业界实践案例

扫码关注腾讯云开发者公众号
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文