السلام عليكم
سؤالي اليوم يتعلق بالدالة sprintf, انظر الكود :
#include<stdio.h>
#include<stdlib.h>
int main()
{
float X = 9999.852;
char SPRINTF[20];
sprintf(SPRINTF,"%.6f",X);
printf("%s\n",SPRINTF);
system("pause");
return 0;
}الغريب في الأمر أن المتغير X ظهر هكذا :
9999.851563
أعرف أن الأمر يتعلق بترميز الأعداد الحقيقية في الذاكرة و لكن كيف نجعل بقية الخانات (الواقعة بعد الخانة الثالثة من الفاصلة) معدومة (هكذا 9999.852 ) !؟, بشكل عام .. بالنسبة للخانات الواقعة بعد الفاصلة و التي لم نعطها قيما, كيف نجعلها معدومة عند تحويل العدد إلى string.
تحياتي,