繁体   English   中英

是否等效于sprintf()的函数,具有要复制的最大字符数?

[英]Function equivalent to sprintf() with maximum number of characters to be copied?

function(char* name)
{       
   char sql[50];
   sprintf(sql, "select %s;", name);
}

在名称大于sql可以容纳的大小的情况下,确保仅将50个名称的字符复制到sql的最佳方法是什么? (带有N参数的sprintf吗?)

谢谢。

snprintf ,它也有一个size参数:

int snprintf(char *str, size_t size, const char *format, ...);

snprintf ,但是如果您打印N个字符,则它不会为null终止。

大多数编译器都有一个snprintf()函数。

您需要snprintf()。

int snprintf(char *str, size_t size, const char *format, ...);

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM