sprintf char长度
- C/C++ code
#include <stdio.h>int main(){ char str[100]; char str2[6]="world"; sprintf(str,"hello,%s",str2); printf("str=%s",str); return 0;}由于str2可能是一个不定长字符串,因此str的长度也不确定,有没有什么方法解决,求教!
[解决办法]
用动态内存来做吧。把str定义为一个指针char *str = (char*)malloc(strlen(str2)+1);然后再进行你的操作。
用完后记得free哦
[解决办法]
1、对str的变长其中一个1L的美女已经说了存放在ram空间或存放在rom空间中例如文本、数据库等读写文件操作
2、对于str2的变长输入,可以考虑用string来存放输入
[解决办法]
或用_snprintf