问题标签 [stdio]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
c++ - 在 C++ 代码中应该使用哪个 CI/O 库?
在新的 C++ 代码中,我倾向于使用 C++ iostream 库而不是 C stdio 库。
我注意到一些程序员似乎坚持使用 stdio,坚持认为它更便携。
真的是这样吗?用什么比较好?
c++ - 为什么 fread 提前到达 EOF?
我正在编写一个将文件读入内存的 C 库。它跳过文件的前 54 个字节(标题),然后将其余部分作为数据读取。我使用 fseek 确定文件的长度,然后使用 fread 读取文件。
循环运行一次然后结束,因为到达 EOF(没有错误)。最后,bytesRead = 10624,ftell(stream) = 28726,缓冲区包含 28726 个值。我希望 fread 在到达 EOF 时读取 30,000 个字节并且文件位置为 30054。
C 不是我的母语,所以我怀疑我在某个地方遇到了一个愚蠢的初学者错误。
代码如下:
根据您使用的参考,很明显在模式标志中添加“b”就是答案。为白痴徽章寻求提名。:-)
该参考文献在第二段第二句中谈到了它(尽管不在他们的表格中)。
MSDN直到页面的一半才讨论二进制标志。
OpenGroup提到了“b”标签的存在,但表示它“没有任何作用”。
c - C相当于自动刷新(每次写入后刷新标准输出)?
在 Perl 中,我可以输入:
并且打印到 STDOUT 的任何内容都将自动被 fflush() 处理。
C中是否有等价物?换句话说,有什么方法可以告诉 stdio 在每次 printf() 之后自动刷新 stdout,就像它自动刷新 stderr 的方式一样?
c - 使用 C 在文本文件中返回随机行的最佳方法是什么?
使用 C 在文本文件中返回随机行的最佳方法是什么?它必须使用标准 I/O 库 ( <stdio.h>
),因为它适用于 Nintendo DS 自制软件。
说明:
- 使用文件中的标题来存储行数不适用于我想做的事情。
- 我希望它尽可能随机(最好是如果每一行都有与其他行一样被选择的概率。)
- 程序运行时文件永远不会改变。(这是 DS,所以没有多任务处理。)
c - 如何使用文件描述符刷新写入?
事实证明,对 open() 与 fopen() 的整个误解源于 ARM 上的 Linux 2.6.14 内核中存在错误的 I2C 驱动程序。向后移植一个工作位 bashed 驱动程序解决了我试图在这里解决的问题的根本原因。
我试图找出 Linux (I2C) 中串行设备驱动程序的问题。看来,通过在设备上的写入和读取之间添加定时操作系统暂停(睡眠),事情会工作......(好多了)。
旁白:I2C 的本质是主机读取或写入的每个字节都由线路另一端(从机)上的设备确认 - 改善事情的暂停鼓励我将驱动程序视为异步工作 - 我无法与公共汽车的工作方式相协调。随便...
我想确保刷新写入(而不是使用固定持续时间的暂停),或者以某种方式测试写入/读取事务是否以多线程友好的方式 完成。
使用的问题fflush(fd);
是它需要'fd'作为流指针(不是文件描述符),即
我的问题是我需要使用ioctl()
不使用流指针的 。IE
建议?
c - 标准输入上的 close/fclose 是否保证正确?
似乎以下调用符合您的预期(关闭流并且不允许任何进一步的输入 - 任何等待流上输入的内容都会返回错误),但它是否保证在所有编译器/平台上都是正确的?
.net - 使用 .net 从子进程重定向 stout
我正在使用以下代码
我的问题是我无法stdout
正确阅读。但是,我可以轻松地写入stdin
,但现在我正在尝试实现一些错误检查代码,但它不起作用。
我正在使用的程序似乎没有写入,stdout
即使它是在命令行中运行的。我可以重现默认情况下bug
附带ftp.exe
的。Windows XP
如果->FileName
用ftp.exe
命令提示符更改ftp.exe
通常给出的ftp>
将不会显示在prg_output
.
现在我知道提示必须使用某种类型,windows shell curses
我可能会混淆问题。
connect i 127.0.0.1
通常在我应该收到的指令之后,connecting to 127.0.0.1...
但我什么也没收到。
关于我做错了什么的任何提示?还有另一种stdout
我不知道的吗?
编辑
我不能使用参数,因为我有多行要写,就像ftp.exe
. 此外,ftp.exe
当您键入 dir 之类的命令时会输出。至少当您编写未知命令时它会输出,它会抱怨Invalid command
.
c - 文件问题
我收到以下代码的以下错误,“1506-221 (S) Initializer must be a valid constant expression”
这是可以接受的吗?实现这一目标的正确方法是什么?
c++ - C++ 标准输入输出::重命名(); 同步?
stdio::rename()
如果函数调用是完全同步的,我只是在徘徊。那么从函数调用返回后的文件是否可以以新名称立即使用,或者可能需要一些时间(几毫秒)才能发生这种情况?我正在调查一个恼人的计时错误,并怀疑后一种情况会发生。
我的软件在 Win2k3 服务器机器上运行。
c - 忽略 C 中的换行符
我正在尝试编写一些代码来读取文件并忽略换行符(\ n),到目前为止我有:
但它似乎并没有忽略“\n”位(不确定“\”)
抱歉代码的布局,该网站似乎不喜欢我的 Opera 版本:(
编辑:谢谢大家,我已经连续编码了大约 6 个小时,完全忽略了递增,这就是为什么我认为 \n 保持静止的原因。
我也不知道\r,uning Linux,但试图跨平台,所以这很有帮助。