【发布时间】:2012-10-03 21:32:53
【问题描述】:
我需要创建一个包含 300 个符号的缓冲区并将其传递给下面描述的函数:
void printThis(char *info);
生成此缓冲区的最佳方法是什么?
如果这很好:
char *buffer = new char()
那么,如何向这个缓冲区添加字符呢?以下方法不好,会引发访问冲突:
for (int i=0; i<300;i++)
{
sprintf(s,"%s",'a');
}
【问题讨论】:
-
因为
%s需要char *,而'a'是一个字符。另外,如果你这样做,你真的应该用s + i替换s-sprintf()无法知道它在哪里完成打印 - 它不是从终止的 nul 开始的strcat()...跨度>
标签: c++ visual-c++