【发布时间】:2014-05-03 04:43:59
【问题描述】:
如果我更改 printf 格式字符串中的参数顺序,我会遇到分段错误。
int main( int argc, char *argv[] )
{
_uint64 test_var = 50000000;
char str[20] = { };
sprintf( str, "TEST_STRING" );
printf( "test_var %lld str %s\n", test_var, str ); //OK
printf( "str %s test_var %d\n", str, test_var ); //OK
printf( "test_var %d str %s\n", test_var, str ); //Segmentation Fault
return EXIT_SUCCESS;
}
为什么会出现这个错误?
【问题讨论】:
标签: c segmentation-fault printf