问题标签 [strcat]

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 回答
266 浏览

c - C: 一种更安全的方法来检查函数中的缓冲区并附加到它?

我有一个函数,我需要为另一个日志记录函数返回时间,它看起来像这样:

现在我想主要的问题是检查缓冲区是否足够长,sizeof() 返回一个指针大小,而 strlen 似乎在两个不同的调用中随机返回 0 或诸如 12 之类的东西。

我的第一个问题是,我怎样才能安全地检测缓冲区的大小,这可能吗?

我的另一个问题是,接受 buf[9] 是一种有利的方法还是应该接受指向缓冲区的指针,并使用 strcat() 而不是 sprintf() 来附加时间?sprintf 使时间值更容易填充零,尽管它似乎只接受字符数组而不接受指针。

0 投票
3 回答
222 浏览

c++ - 如何将 strcat 与 ENUM 一起使用?

我有一个基于用户输入生成 ENUM 的外部工具。现在这个 ENUM 正在被我的 C++ 代码使用,其中我必须根据变量“x”选择一个特定的 ENUM。生成的 ENUMS 的形式为“ENUM_1”、“ENUM_2”、“ENUM_3”....等等。现在我想要代码中的代码,以便根据“x”选择适当的 ENUM。我尝试使用 strcat 函数,例如:

但它给了我错误“无法从 char* 转换为 map1。

有人可以建议一种实现这一目标的方法。

谢谢你

0 投票
2 回答
1256 浏览

c++ - const char * 与 const wchar_t* (串联)

什么是最好的连接方式?

它给出了错误。正确的方法应该是什么?

谢谢。

0 投票
3 回答
8120 浏览

c - C strcat 乱码

我在 C 中有一个函数,我试图从两个不同的位置(未知大小,可能很大)获取字符串并将它们组合成一个字符串并返回它们。如果我只打印两个字符串,那么我会得到正确的结果,但是当我尝试使用 strcat 组合字符串时,我最终会得到 5 个垃圾字符,然后是组合字符串的结果。

有人对我做错了什么有一些建议吗?这是一些示例代码来演示我在做什么:

0 投票
3 回答
19773 浏览

c++ - 为什么“strcat”被认为是“不安全的”?

可能重复:
为什么 MSVC++ 认为“std::strcat”是“不安全的”?(C++)

这是我的代码:

在 MSVC++ 中调试时,它给了我这些警告消息:

我该如何解决?

0 投票
8 回答
2436 浏览

c - 连接字符串后的 Malloc() 内存损坏错误

伙计们,我正在生成一个字符串,它表示文件的路径,连接一个宏和一个字符串。功能是这样的:

返回的指针引用了一个正确的字符串,但是在调用这个函数之后,进程抛出了一个非常非常糟糕的* glibc 检测到./mmboxd: malloc(): memory corruption: 0x085310a8 * * with the relative backtrace。我知道问题出在这里,因为我在实现它后就开始遇到这个错误,而且我使用的唯一 malloc 就在这里。这段代码有什么问题?

0 投票
6 回答
1212 浏览

c++ - 使用 strcat 追加字符数组不起作用

有人能告诉我这段代码有什么问题吗???

0 投票
2 回答
109 浏览

c - 字符串在没有赋值的情况下连接到另一个,这是为什么呢?

下面是一个程序的函数:

注释行是这样的,因为由于某种原因,数组“b”包含字符串“n2”,尽管明显缺少赋值。这发生在第一次 strcat 调用之前,但在 fscanf 调用之后/期间。

它确实实现了预期的目标,但是为什么将 n2 连接到 b 的末尾,尤其是当 b 只为 1 个数组元素保留空间时?

以下是 fscanf 调用后的变量定义片段:

0 投票
1 回答
281 浏览

c - 如何在 C 编程中的 OPENFILENAME 参数中添加 strcat

我有一个使用 OPENFILENAME 的工作代码。我可以知道如何使用 strcat 来动态控制它的参数吗

这个正在工作

我尝试先使用 strcat 和 '\0' 但它只显示这样
strcat (filter, filterText);
strcat (filter,"\0");
strcat (filter,filterVal);
strcat (filter,"\0");
ofn.lpstrFilter = filter; \\missing \0

我尝试使用 '\\0'
strcat (filter, filterText);
strcat (filter,"\\0");
strcat (filter,filterVal);
strcat (filter,"\\0");

ofn.lpstrFilter = filter; \\now includes the\0

但是当我运行程序时,对话框过滤器显示如下
“Rule Files (*.net and *.rul)\0*.rul;*.net\0”;

谢谢

0 投票
2 回答
80 浏览

c - 在连接字符串时获得不必要的值

我在连接字符串时遇到问题。我认为这是个愚蠢的问题,但我没有得到答案。这就是我在这里发帖的原因。请帮助我。

源代码是

打印我得到的buff值后

我正进入(状态:"FMCG,FMCG00,FMCG00..."

为什么会出现这种情况?当我将 arr-10 值硬编码到 FMCG 时..?

提前致谢....