一、輸出不同1、vsnprintf:vsnprintf將可變個參數(shù)按照format格式化輸出成字符串,二、函數(shù)聲明不同1、vsnprintf:vsnprintf的函數(shù)聲明為intsnprintf,2、snprintf:snprintf的函數(shù)聲明為int_vsnprintf。
C語言的vsnprintf和snprintf區(qū)別為:輸出不同、函數(shù)聲明不同、內(nèi)存溢出不同。一、輸出不同1、vsnprintf:vsnprintf將可變個參數(shù)按照format格式化輸出成字符串。2、snprintf:snprintf將可變參數(shù)格式化輸出到一個字符數(shù)組。二、函數(shù)聲明不同1、vsnprintf:vsnprintf的函數(shù)聲明為intsnprintf。2、snprintf:snprintf的函數(shù)聲明為int_vsnprintf。三、內(nèi)存溢出不同1、vsnprintf:vsnprintf加了size的限制,防止了內(nèi)存溢出。2、snprintf:snprintf會出現(xiàn)內(nèi)存溢出情況
2、C語言中,printf(c語言中浮點(diǎn)數(shù)的輸出格式為:%*.*f或者%*.*lf。其中*是代表寬度,第一個*表示整個數(shù)的寬度,第二個*表示小數(shù)位的寬度,回到題目,/是輸出整體寬度為2,小數(shù)位寬度沒有默認(rèn)是6位,相當(dāng)于%2.6f。但是這個數(shù)的整體寬度超過了2所以2不起作用,如果不足的情況是整數(shù)補(bǔ)空格,小數(shù)補(bǔ)0。有效滿足小數(shù)位補(bǔ)0剩下的寬度補(bǔ)空。