问题标签 [character-arrays]

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.

0 投票
1 回答
986 浏览

c++ - Trying to delete duplicates in char array/cstring?

I don't understand why my code isn't working. The commented out code would remove the wrong characters and not remove any spaces, but the current delete_repeats function is giving me an error of: `line 49: expected initializer before numeric constant.

Can anyone help me?`

The commented out delete_repeats was the second one I came up with and the first delete_repeats was from an example I found, but neither is working.

Thanks everyone! Here is my corrected code:

I removed the commented out delete_repeats function and edited the new one as well as changed the output function.

0 投票
1 回答
1338 浏览

java - JNA 从 C/C++ 接收包含字符串的结构

我正在尝试使用 JNA 从包含固定长度字符数组的 C/C++ 库中获取一些结构。在 C++ 中,因为我没有动态分配任何东西,所以我可以通过复制将结构返回给调用函数......并且如果我可以使用 Java,我希望保留该签名。我对 JNA 和 Java 还很陌生,所以我确定我只是错过了一些东西......

C++ 结构的简化版本如下所示:

JNA 类是这样的:

这给出了一个错误。我也尝试public char[] name = new char[256];在类声明中使用,但这不是正确的做法。

如果我按照http://www.eshayne.com/jnaex/example12.html上的示例进行操作,我可以让它工作,但他们的解决方案让我在我的 C++ 库中的堆上分配字符数组,然后我需要当我在 Java 中完成它时,创建第二个调用去释放内存。我希望我可以将其保留在堆栈中并返回一份副本。

我可以进行更改,以便使用 ByReference 并在 Java 中分配结构并通过参数列表将其发送到 C 代码进行填充,但我不确定如何在 Java 端分配固定长度的字符缓冲区...

理想情况下,我只想通过 JNA 打一个电话,并坚持使用托管内存。有什么建议么?最好按照该链接上描述的方式进行,还是有其他方法可以做到这一点?

0 投票
1 回答
165 浏览

java - Java中字节数组的char操作

我有一个“包含”文本的字节数组——此时编码/字符集是未知的。

如何在不从字节数组创建字符串对象的情况下删除空格、\n、\r 字符?

目标是将字节数组显示为文本,并带有用户指定的字符集,只是没有这些空格、\n、\r 字符。

0 投票
1 回答
545 浏览

c++ - 调整 char 数组的大小并不总是有效

在一个名为的自定义字符串类中,Str我有一个函数c_str()将私有成员返回char* dataconst char* c_str() const { return data; }. 这在我创建新文件后调用时有效,Str但如果我随后覆盖Strusing cin,则调用c_str()它有时有效,但如果我比原来cin的更大,则总是有效。Str

这里第一个b.c_str()有效,但如果我尝试在线路上更改Str b为“b”,cin >> b;那么它会输出“b”+一些垃圾。但是,如果我尝试将其更改为“bb”,它通常会起作用,如果我将其更改为比“this is b”更长的东西,它总是会起作用。

这很奇怪,因为我的 istream 运算符(它是友好的)完全解除分配Str并最终为它读取的每个字符分配一个仅大 1 个字符的新字符数组(只是为了看看它是否可以工作,它没有)。因此,在读取其他内容后返回数组似乎会返回data设置它的新数组。

相关功能:

push_back()像这样,数组的容量永远不会超过它所拥有的容量,所以我看不出我怎么能c_str()输出任何内存垃圾。

0 投票
1 回答
429 浏览

function - 如何从 Fortran 上的函数中获取值?

这是一个执行基本转换的简单程序。我尝试使用循环和指令打印出值:

出于某种原因,我无法使用此行获取值

0 投票
2 回答
1207 浏览

java - 如何在 Java 中处理不可见的换行符?

我目前正在编写 Java 游戏的代码。我应该用 .txt 文件中的字符填充数组。问题是我的程序还存储了文件中不可见的换行符,因此数组没有正确填充。我已经尝试替换不可见字符,但结果是灾难性的(我的数组只会填充第一行,其余的将保持为空)这是我用于数组的代码块:

.txt 文件的格式也可以在这里找到:http: //pastebin.com/NynJGkFk。提前非常感谢!

0 投票
1 回答
1491 浏览

if-statement - Fortran77:检查字符数组索引是否为空

我有一个字符数组names(10)*6。我正在循环 I = 1:10 并写入名称(I)的值。

问题是名称定期缺少值,如果特定名称(I)是这种情况,我想跳过它。

我试图做这样的事情。

我收到一个错误,告诉我我将字符与 0 进行比较是愚蠢的。这是有道理的。我应该把它和什么比较?像这样的空地?在我为它声明空间后,如何检查它是否未定义或为空?

目标是仅在确实存在某些内容时才发出写入命令。:-)

编辑注意:我可能不会初始化这个数组。我想知道未定义的声明索引的默认值是什么,或者是否有一个函数可以检查字符数组索引是否为空。

0 投票
1 回答
277 浏览

c++ - 读取文件,尝试返回二维字符数组

嘿,我正在尝试接收函数参数中的文件并返回 2D char 数组、2D char 指针或 2D Vector .. 不确定我应该使用哪个。我正在考虑使用 2D 字符数组来保持简单。基本上我不知道要读取的文件中每一行的长度,所以我不确定常规数组的长度。我将一张普通的纸想象成一个非常大的二维数组。这就是我到目前为止所得到的,它仍然是 Void 因为我不知道要返回什么..

任何输入都是好的输入!干杯!

0 投票
1 回答
95 浏览

c++ - C ++:使用特定命令退出for循环push_back命令

我正在学习在 C++ 中push_back向量,我到了可以使用它的地方。但是,我制作的代码粘贴在下面,每次循环结束时都会询问用户是否要继续循环。我发现这很不方便,所以我想将代码更改为用户输入(“EXIT”)时会破坏 for 循环的位置。在这种情况下,我将如何更改代码?我粘贴了整个代码,以防我可能不得不更改除 for 循环之外的部分。

0 投票
1 回答
764 浏览

c++11 - 如何将 getline() 函数得到的字符串存储到字符数组中?

现在我想将 getline() 得到的字符串存储到一个字符数组中。我想知道这之后该怎么办?

对不起,如果这是一个非常基本的问题。我是初学者。谢谢