C语言 sprintf 函数用法:为什么 sprintf(buf, "%s","abc","def") 会报错?
是的,编译器会报错。因为 sprintf 函数的第一个参数是一个字符数组,用来存储格式化后的字符串,而第二个参数是格式化字符串,用来指定格式化规则,后续的参数是按照格式化字符串中指定的格式提供的实际数据。在这个例子中,第三个参数 'def' 没有对应的格式化规则,所以编译器会报错。
正确的用法是将要格式化的字符串合并成一个字符串,如 sprintf(buf, '%s%s','abc','def');
原文地址: https://www.cveoy.top/t/topic/qwJs 著作权归作者所有。请勿转载和采集!