首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >fopen可以创建文件,但不能在C中重新打开文件

fopen可以创建文件,但不能在C中重新打开文件
EN

Stack Overflow用户
提问于 2018-02-28 18:52:58
回答 2查看 849关注 0票数 0

我无法打开我刚刚用fopen()创建的文件,我在Linux和Windows上都尝试了这段代码。我还使用完整路径尝试了这段代码。

代码语言:javascript
运行
AI代码解释
复制
#include<stdio.h>
int main() {

    char c;
    FILE *myFile = fopen("name.txt", "w"); //file name.txt created
    fprintf(myFile, "My name is %s", "Adam"); //text saved
    fclose(myFile); //file closed

    FILE *myOpenFile;
    if(myOpenFile = fopen("name.txt", "r") == NULL);
    {
        printf("No such file\n"); //no such file is executed
        return 0;
    }

    while (c=!EOF)
    {
        c = fgetc(myOpenFile);
        printf("%c", c);
    }
    fclose(myOpenFile);

    return 0;
}
EN

回答 2

Stack Overflow用户

发布于 2018-02-28 18:55:12

代码语言:javascript
运行
AI代码解释
复制
myOpenFile = fopen("name.txt", "r") == NULL

将会是

代码语言:javascript
运行
AI代码解释
复制
(myOpenFile = fopen("name.txt", "r")) == NULL

否则,您将把==的结果赋给myOpenFile,即01。请记住,==具有higher precedence而不是=。因此,在将其分配给myOpenFile之前,它会进行比较。

对你来说,另一件重要的事情是-- fgetc的返回值是int,而不是char。所以在这里int c是正确的用法,而不是char c

您的c未初始化-使用某个值进行初始化,然后进行比较。正如所建议的那样,它将是(melpomene)

代码语言:javascript
运行
AI代码解释
复制
while ((c = fgetc(myOpenFile))!=EOF)
{
     printf("%c", c);
}

前面您基本上将值-1 (EOF)求反,它是0,该0值被赋值给c,赋值表达式的结果是赋值的值为0,并且该0被认为是false -循环永远不会进入。

还要注意,前面在将EOF赋值给c时输出了它的值。这不是你的意图。修正后的代码应该类似于上面所示的代码。

票数 4
EN

Stack Overflow用户

发布于 2018-02-28 19:03:58

你的代码中有一个拼写错误

代码语言:javascript
运行
AI代码解释
复制
if(myOpenFile = fopen("name.txt", "r") == NULL);
    {
        printf("No such file\n"); //no such file is executed
        return 0;
    }

第一行末尾的;生成一个什么也不做的代码块。然后,将始终执行以下代码块。

旁白:你使用了错误的变量类型。

代码语言:javascript
运行
AI代码解释
复制
char c;

应该是

代码语言:javascript
运行
AI代码解释
复制
int c;

正如手册页所述。不要担心

代码语言:javascript
运行
AI代码解释
复制
printf("%c", c);

因为char无论如何都会被提升为int

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

https://stackoverflow.com/questions/49036607

复制
相关文章
用Javascript获取页面元素的位置
制作网页的过程中,你有时候需要知道某个元素在网页上的确切位置。 下面的教程总结了Javascript在网页定位方面的相关知识。 一、网页的大小和浏览器窗口的大小 首先,要明确两个基本概念。 一张网页的全部面积,就是它的大小。通常情况下,网页的大小由内容和CSS样式表决定。 浏览器窗口的大小,则是指在浏览器窗口中看到的那部分网页面积,又叫做viewport(视口)。 很显然,如果网页的内容能够在浏览器窗口中全部显示(也就是不出现滚动条),那么网页的大小和浏览器窗口的大小是相等的。如果不能全部显示,则滚动浏览器
ruanyf
2018/04/12
3.3K0
如何交换PDF页面?PDF文件的页面位置怎么交换
收到读者大大的回复,提到PDF文件交换页面,也不知道要干嘛用,但是既然读者大大提到了,肯定是在某个时刻需要这个操作,如何交换PDF页面?PDF文件的页面位置怎么交换,小编这期决定出个教程,不喜勿喷,不
用户6477319
2019/10/31
2.3K0
如何交换PDF页面?PDF文件的页面位置怎么交换
JavaScript 获取鼠标及元素在页面上的位置
HTML5学堂:JavaScript获取鼠标的位置,大家会想到clientX/Y等属性,灵活的获取鼠标的位置信息,能够便于我们实现各种复杂的页面交互效果,到底还有哪些属性可以获取鼠标的位置信息?另外,还有哪些能快速获取标签在页面中的位置信息? 在书写一些“拖拽”页面交互效果,比如常见的拖拽效果、自定滚动条、放大镜等效果,都需要用到了鼠标或元素在页面上的位置信息。为了能够快速、灵活的获取鼠标位置信息,今天要带着大家来接触的不是利用clientX/Y获取鼠标的位置信息,而是利用了大家可能比较少用的两个属性lay
HTML5学堂
2018/03/13
3.5K0
JavaScript 获取鼠标及元素在页面上的位置
用 Python 提取 PDF 文本的简单方法
你好,我是征哥,一般情况下,Ctrl+C 是最简单的方法,当无法 Ctrl+C 时,我们借助于 Python,以下是具体步骤:
somenzz
2022/05/24
1.1K0
用 Python 提取 PDF 文本的简单方法
Oracle查询表位置和列注释等
-- 注释 SELECT t.TABLE_NAME, t.COMMENTS, c.COLUMN_NAME, c.COMMENTS FROM USER_COL_COMMENTS c JOIN USER_TAB_COMMENTS t ON c.TABLE_NAME = t.TABLE_NAME WHERE 1 = 1 -- AND t.TABLE_NAME = '' -- AND t.COMMENTS like '%%' -- AND c.COLUMN_NAME = '' --
林万程
2020/06/16
1K0
MySQL查询表位置和列注释等
; # 查询表在哪个数据库与注释 SELECT TABLE_SCHEMA, TABLE_NAME, TABLE_COMMENT FROM information_schema.TABLES WHERE 1=1 # AND TABLE_SCHEMA = '数据库名' AND TABLE_NAME = '表名' # AND TABLE_COMMENT = '表注释' ; # 查询列在哪个表与注释 SELECT c.TABLE_SCHEMA, c.TABLE_NAME, t.TABLE_COMMENT, COL
林万程
2018/06/21
3K0
getBoundingClientRect方法获取元素在页面中的相对位置
获取元素位置可以用 offset 或 getBoundingClientRect,使用 offset 因为兼容性不好,比较麻烦,offset获取位置会形成“回溯”。而 getBoundingClientRect 方法则 兼容性较好,基本所有的浏览器都支持了,且使用起来更容易和简单。
用户6167509
2019/09/04
3.9K0
使用python找到PDF文件的文本位置、字体大小、字体名称和字体颜色
看了https://cloud.tencent.com/developer/ask/sof/1162044,需要获得pdf文件的段落的字体大小。
用户6038411
2022/12/04
3.4K0
WinRT开发语言的功能和效率
WinRT开发有着多种选择性,就编程语言这一点就表现的很突出;这里就这一点 深入展开,探讨在WinRT开发之初如何依据各 个编程语言的特性、功能和效率来对 产品的技术方向做出选择。 这里我选择运行计算复杂度较高的算法作为测试方法,虽然不能代表全部,但 是很大程度上展示大家平时开发过程中所面临的常见场景 和问题。考虑到演示和 理解,就选择了查找100000以内的所有素数的个数的算法作为演示。另外也顺带演 示如何在WinRT下实现多编程语言和技 术之间的协作吧。 关于基本知识和算法吧详细的说明,请自行搜索各大引
葡萄城控件
2018/01/10
1.1K0
C# 用 iTextSharp 将 PDF 转成文本
using System; using System.IO; using iTextSharp.text; using iTextSharp.text.pdf; using iTextSharp.text.pdf.parser; public class ParsingPDF { static string PDF; static string TEXT2; /** * Parses the PDF using PRTokeniser * @param src the path to the or
用户8671053
2021/11/02
1.5K0
webAPIs04-页面尺寸和位置、时间
ECMAScript 中内置了获取系统时间的对象 Date,使用 Date 时与之前学习的内置对象 console 和 Math 不同,它需要借助 new 关键字才能使用。
yuanshuai
2022/08/17
5840
用python批量获取公募基金季报pdf
最近公募基金扎堆发四季度报告,截至今天,所有公募基金四季报已经全部公布完了。基金的季度报告里可以查看基金的各种信息,如果想购买一个基金,最好的办法可能是先看看他过去几年的报告,了解一下投资风格。
量化小白
2023/04/03
5571
用python批量获取公募基金季报pdf
整理获取 viewport 和 element 尺寸和位置方法
返回整个页面的滚动的位置,pageYOffset/pageXOffset 与 scrollY/scrollX 返回的值一致,前者是后者的别名,建议使用前者,不支持 IE8
JS菌
2019/04/23
1.3K0
整理获取 viewport 和 element 尺寸和位置方法
​用 Python 和 Gensim 库进行文本主题识别
从大量文本中自动提取人们谈论的主题(主题识别)是自然语言处理的基本应用之一。大型文本示例包括社交媒体订阅、消费者对酒店、电影和其他业务的评价、用户评论、新闻和客户发来的邮件。
数据STUDIO
2022/05/24
2K0
​用 Python 和 Gensim 库进行文本主题识别
WinRT app guide
Creating a WinRT application step by step: From idea to publishing WinRT app guide: Step 1: The idea WinRT app guide: Step 2: The Plan WinRT app guide: Step 3: Creating the basic UI WinRT app guide: Step 4: Adding RadControls for WinRT/Metro WinRT app guid
张善友
2018/01/30
5770
JavaScript与jQuery获取元素的宽、高和位置
今天汇总整理了 JavaScript 和 jQuery 获取元素宽高和位置的方法,比较全面,方便自己和需要并搜到此文章的朋友们查看。
德顺
2019/11/13
3.1K0
WinRT:WebAuthenticationBroker For OAuth认证
之前开发过QQ互联的OAuth 的.NET/Mono/Windows Phone SDK,具体可以 QQ互联OAuth2.0 .NET SDK 发布以及网站QQ登陆示例代码。到了Windows 8的Metro 程序如何使用QQ互联的API呢,今天做了一些实验性的代码验证。使用OAuth的最大挑战就是获得AccessToken,在OAuth的一个App AccessToken从本质上来说就是用户的验证登陆和用户的权限授权,获取到用户的accessToken后,就可以使用AccessToken 对REST AP
张善友
2018/01/22
6390
WinRT:WebAuthenticationBroker For OAuth认证
用python解析pdf中的文本与表格【pdfplumber的安装与使用】
我们接触到的很多文档资料都是以pdf格式存在的,比如:论文,技术文档,标准文件,书籍等。pdf格式使得用机器从中提取信息格外困难。
blmoistawinde
2019/10/30
4.9K0
点击加载更多

相似问题

pdf文件注释的位置

11

PDF文本位置,页面左边距

30

从pdf获取文本位置

22

用同步创建pdf

12

如何从PDF页面获取文本?

21
添加站长 进交流群

领取专属 10元无门槛券

AI混元助手 在线答疑

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

洞察 腾讯核心技术

剖析业界实践案例

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