编译器的警告是分等级的,不同程度的风险被划分成了不同的警告等级,而使用%d输出 short 和long 类型的风险较低,如果你的编译器设置只对较高风险的操作发出警告,那么此处你就看不到警告信息。