问题标签 [null-character]
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.
bash - 通过 Bash 循环读取空分隔的字符串
我想遍历文件列表而不关心文件名可能包含哪些字符,因此我使用由空字符分隔的列表。该代码将更好地解释事情。
以下代码在从文件中读取时有效,但我需要从包含文本的变量中读取。
c - fgetc 空终止符
我在 K&R 做一个练习:
编写一个程序 detab,用适当数量的空格替换输入中的制表符,以留出下一个制表位。
这就是我到目前为止所拥有的(没有对文件进行错误检查):
它似乎有效,但我想知道为什么\0
最后不需要。我只是幸运吗?
string - 用前导空格分隔字符串的好字符是什么?
我使用空字符 ( \0
) 作为分隔符,以保持字符串在sprintf
. 但是带有空字符的字符串(在这种情况下)不适用于该Curses
addstr
函数。
是否有一些合适的字符来代替\0
这个目的?
c++ - C++ - 字符数组和空字符
我有两个关于 char 数组的问题。
从下面的代码中,既然
/li>arr
是const
,为什么编译器不给我一个错误,因为我正在重写它?当我像这样初始化一个 char 数组时:
如果我这样做:
它会打印
hisomething here
。我以为它应该打印出来有 3 个空位。
但如果我这样做:
它将打印出 3 个空格。
第二种情况似乎证明编译器没有添加任何空字符。那么编译器如何忽略这 3 个空格呢?
vim - Vim 打开带有空字符的 Powershell 转储文件
在 Powershell 中,我运行一些命令行脚本并将其转储:
然后,我在 vim 中打开这个日志,我看到的大致是这样的:
和十六进制转储:
如何配置 vim 以正常打开此类文件,而无需每次都删除这些空值?PS记事本打开文件时不显示空值
c++ - 在字符串中使用空字符 (C++)
我正在复习我的 C++,偶然发现了一个关于字符串、字符数组和空字符 ( '\0'
) 的奇怪行为。以下代码:
产生输出:
幕后发生了什么?为什么字符串文字和声明的 char 数组存储't'
at 索引 6(在 internal 之后'\0'
),但声明的字符串不存储?
c - 打印一个包含空字符的字符串
我将一个带有空格的字符串作为输入,并将空格替换为 NULL 字符“\0”。当我现在打印字符串时,我只希望第一个 NULL 字符之前的第一个空格之前的部分,但我得到的是原始字符串。
这是代码-
这有什么问题?
c++ - Char 数组在结尾之前包含空字符
我有一个类项目来用 C++ 创建一个网络服务器。一切都很顺利,直到我需要托管图像或 pdf 文件,此时文件已损坏。进行更多挖掘后,我意识到所有损坏的图像在结束之前都有空字符。
这让我想到了我的问题。我有一个 char* ,我已将这些文件读入其中,并且我知道文件的长度。我很肯定正在读取整个文件(下面的代码),但我不知道如何打印或发送它。如何告诉 C++ 我想发送 char* 之后的前 X 个字符?(我确定答案在这里或网络上的某个地方,我似乎无法以正确的方式表达我的问题以找到答案)
对于纯文本文件,这将输出正常。对于 PDF,它只打印文件的第一部分(第一个空字符之前的部分)。如何让它打印出整个文件?
编辑:澄清一下,我的最终目标是通过网络发送,而不是重新保存文件。
c++ - 输出文件中奇怪的空字符序列
我将图形写入简单的文本文件格式(邻接表)。在一个例子中,我发现生成的文件包含一排奇怪的很长的“NUL”字符。
这些空字符可能来自哪里?他们的意思是什么?
生成文件的代码是
对所有节点的迭代实现为:
编辑:类型node
只是一个 typedefint64_t
bash - BASH/Readline 逐字空字符
我试图准确地了解 TTY、内核、线路规则和 shell 中的谁实际上处理了我输入的任何给定部分。特别是,我一直在研究这篇文章:
我的问题:如果我想让实际的删除字符出现在 BASH 中,我可以使用 ^V 逐字逐句。例如,我可以使用 Ctrl+V 然后 Ctrl+H 有一个退格字符。漂亮整齐!
我的问题是这样的:如果我处于以规范模式读取的内容(我相信 cat 会这样做),我可以通过执行 Ctrl+V 然后 Ctrl+2(基本上是 Ctrl+@,这是插入符号)在其中放置一个空字符对于空字符)。
但是,BASH 不允许我在其中一行包含逐字空字符,而且看起来 python 和其他 readline 程序也不会。
有人知道这是为什么,还是通用的解决方法?