![]() |
1
8
尝试用编译
那么你不应该在你的代码IMHO中使用VLAs。 |
![]() |
2
7
我会选择:
或者,因为除了打印字符串之外,您实际上没有对字符串执行任何操作:
:-)
如果组合字符串合适,则使用堆栈存储,如果不合适,则只分配内存。如果大量字符串组合成小于限制值的字符串,这通常会导致速度大幅提高。 |
![]() |
3
3
可变长度数组不是第一个isoc标准的一部分(不同地称为“C89”、“C90”或“ansic”)。然而,他们 最新ISO C标准(称为“C99”)的一部分。 GCC可以在几种模式下编译您的代码,包括“strict C90”、“C90-with-GNU-C-extensions”和“C99”(尽管它没有)
默认情况下,GCC使用“C90-with-GNU-C-extensions”,这就是为什么您的代码可以毫无怨言地编译。使用
如果要确保代码与基本C90标准兼容,请使用
|
![]() |
4
0
解决这些问题的一个非常常见的习惯用法是让调用者管理内存。因此,与其自己分配内存(要么在堆栈上使用可变长度数组,要么
这种方法的优点是
|
![]() |
Ben · 统计向量中的单词在字符串中出现的频率 3 月前 |
![]() |
bear_525 · 从列中删除中间名和首字母,并保存在单独的列中 5 月前 |
![]() |
asdfadf · 为什么具有相同内存值的字符串和整数打印方式不同? 5 月前 |
![]() |
user764754 · 防止多行原始字符串文字中出现新行字符 5 月前 |
![]() |
Bogaso · 从列表中返回与模式匹配的元素 5 月前 |
![]() |
Jasco · 如何使用VBA提取两个相似字符之间的字符串中的单词? 5 月前 |