问题标签 [cstring]

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 投票
2 回答
449 浏览

c++ - 使用 CString 转换 int 并发送到控制台

我的控制台应用程序尝试将整数写入控制台:

我希望170将“”写入控制台,但发生的是“ 00E21280”。这是地址。我已验证“170”已保存在该内存位置。有任何想法吗?

0 投票
6 回答
1070 浏览

c++ - 操作 C 风格的字符串?

大家好,我的问题是,如何将两个 C 风格的字符串合并为一个?

由于受到 C++ 做事方式(std::string)的影响,我从未接触过 C 风格的字符串,并且需要为我当前的开发项目了解更多关于它们的信息。例如:

提前致谢。

0 投票
4 回答
5581 浏览

c++ - 使用零填充和预设位数将 float\double 数字格式化为 CString

我正在寻找一种将以下 float\double 数字格式化为 CString的简单方法。
我希望使用 CString.Format(),但也欢迎使用替代方法,只要它最终成为 CString。

转为以下格式:

注意不应该有小数点
这可以简单地完成吗,如果可以的话怎么做?

0 投票
8 回答
107766 浏览

c - 如何从 C 字符串中删除第一个字符?

谁能帮帮我吗?我需要从char *C 中的 a 中删除第一个字符。

例如, char * contents包含一个'\n'字符作为数组中的第一个字符。我需要检测并消除这个字符,在“清理”后修改原始变量。

谁能帮我写代码?我对C完全陌生,似乎无法弄清楚。

0 投票
2 回答
8023 浏览

c++ - C ++删除c字符串数组/其他类型的数组

[编辑]

好的,这是有道理的,谢谢Sharptooth 和CashCow。您不能删除分配为 const 的数据,这使得字符串文字成为问题。因此,如果我将初始化更改为如下所示:

对我的 for 循环进行硬编码,使其仅遍历 i=1 和 i=2,然后一切正常。

我注意到,int arraySize = sizeof arr / sizeof *arr;只有在使用 new[] 而不是本地分配数组时,似乎才有效。这是因为我的原始char ** groups;变量衰减为指针,对吗?

现在我想知道,有没有办法判断数据是否为常量?


[原来的]

我知道数组和指针是邪恶的,并且有这些很棒的东西叫做向量和链表。

但是,在内存管理方面,我是个新手,我感觉有点自虐。假设我制作了一个 C 字符串数组。我从这个问题和你必须匹配的 FAQ-Lite 中type a = new type[len];知道delete[] a;。或者我认为。

FAQ-Lite在这里谈论管理锯齿状数组,但他专注于矩阵,我不确定它是否适用于我正在做的事情。

这段代码对我来说很有意义,但在delete[] a;. 这有什么问题,我该如何完成这项任务?

0 投票
5 回答
1900 浏览

c++ - 以 NULL 结尾的字符串及其长度

我有一个遗留代码,它接收一些专有代码,对其进行解析并创建一堆静态字符数组(嵌入在表示消息的类中),以表示 NULL 字符串。之后,指向字符串的指针被四处传递,最后被序列化到某个缓冲区。

分析表明str*()方法需要很多时间。

因此,我想使用memcpy()是否可能。为了实现它,我需要一种将长度与指向 NULL 终止字符串的指针相关联的方法。我想:

  • 使用std::string看起来效率较低,因为它需要内存分配和线程同步。

  • 我可以使用std::pair<pointer to string, length>. 但在这种情况下,我需要“手动”保持长度。

你怎么看?

0 投票
3 回答
682 浏览

c++ - C ++,OpenGL:c字符串的奇怪问题

我在这里有一个 C++ 问题,我根本无法理解。

我有 2 个略有不同的功能。他们俩都应该做同样的事情。但只有一个可以正常工作。

方法一:方法的输入是'const string samplerName = "test"'



方法二:



如您所见,glGetUniformLocation 返回 2 个不同的值。正确的返回值是“0”,而不是“-1”。所以我想知道,这两个电话之间到底有什么区别?

引用:“c_str() 生成一个以空字符结尾的字符序列(c-string),其内容与字符串对象相同,并将其作为指向字符数组的指针返回”。这正是 glGetUniformLocation(...) 方法作为其第二个参数所需要的。那么,为什么只有上面的方法 2 成功了呢?是编译器的问题吗?

我在 Win7 上使用 MS Visual Studio 2008。

我一直在寻找这个错误近 2 天了。我真的很想澄清这一点。它把我逼疯了...

谢谢沃尔特

编辑:

这也不起作用。



0 投票
5 回答
10700 浏览

c - 删除 C 字符串的第一部分

我很难弄清楚这一点。我有一个 C 字符串,我想删除它的第一部分。让我们说它:“食物,数量,卡路里”。我想复制这些值中的每一个,但不是逗号。我找到逗号,并将逗号的位置返回给我的方法。然后我用

将“theLine”复制到我的数组位置“i”,只有第一个“end”字符(第一次,“end”将是 4,因为那是第一个逗号所在的位置)。但是,因为它在循环中,所以我想从数组中删除“食物”,然后重新执行该过程。但是,我看不到如何删除第一部分(或向前移动数组指针?)并保留其余部分。任何帮助都会很有用!

0 投票
1 回答
175 浏览

visual-studio-2008 - std::map 糟糕的字符仅在发布模式下

我有一个 std::map 作为函数的参数,并且在调试模式(VS2008)中,地图具有正确的键和值,但是当我在 Release 中启动程序时,地图中有糟糕的字符!

代码转储:

任何想法为什么此代码在发布模式下不起作用???

谢谢和问候

0 投票
2 回答
374 浏览

c++ - 为什么我在使用 Format() 格式化的 CString 中得到无效数据?

我不断得到时髦的值和/或崩溃。欢迎任何建议。