下面这段代码是可以正常运行的
#include#include int main() { char str[80]; sprintf(str, "Pi 的值 = %f", M_PI); puts(str); return(0); }
换成下面这种方式就不行了
#include#include int main() { char* str; sprintf(str, "Pi 的值 = %f", M_PI); puts(str); return(0); }
再换成下面这样又可以了
#include#include int main() { char* str = (char*)malloc(20); sprintf(str, "Pi 的值 = %f", M_PI); puts(str); return(0); }



