السلام عليكم :)
أريد منكم شرح كيفية تحويل المتغيرات النصية الى متغيرات رقمية :) عشان توضح الصورة أكثر ، لو أردت تخزين قيمة التايمر للثواني فإنه سيكون بين 0 - 59 ، ودي أخزنه في متغير من نوع int :( ، ما هو المطلوب ، مع الشكر الجزيل :):):)
السلام عليكم :)
أريد منكم شرح كيفية تحويل المتغيرات النصية الى متغيرات رقمية :) عشان توضح الصورة أكثر ، لو أردت تخزين قيمة التايمر للثواني فإنه سيكون بين 0 - 59 ، ودي أخزنه في متغير من نوع int :( ، ما هو المطلوب ، مع الشكر الجزيل :):):)
السلام عليكم.
لم أفهم سؤالك بشكل صحيح:)ماذا تقصد بتخزين قيمة التايمر للثواني ؟؟!!
على كل إذا كان قصدك تحول الأرقام المصاغة بشكل نص مثل : "123" إلى رقم تستطيع تنفيذ العمليات الحسابية عليه فعليك استخدام التوابع:
atoi للتحويل من نص إلى عدد من نوع int
atol للتحويل من نص إلى عدد من نوع long
atof للتحويل من نص إلى عدد من نوع double
وهذا مثال يوضح كيفية استخدامها ( مقتبس من MSDN )
#include
#include
void main( void )
{
char *s; double x; int i; long l;
s = " -2309.12E-15"; /* Test of atof */
x = atof( s );
printf( "atof test: ASCII string: %stfloat: %en", s, x );
s = "7.8912654773d210"; /* Test of atof */
x = atof( s );
printf( "atof test: ASCII string: %stfloat: %en", s, x );
s = " -9885 pigs"; /* Test of atoi */
i = atoi( s );
printf( "atoi test: ASCII string: %sttinteger: %dn", s, i );
s = "98854 dollars"; /* Test of atol */
l = atol( s );
printf( "atol test: ASCII string: %sttlong: %ldn", s, l );
}وستكون النتيجة التي ستظهر من المثال السابق كالتالي :
atof test: ASCII string: -2309.12E-15 float: -2.309120e-012 atof test: ASCII string: 7.8912654773d210 float: 7.891265e+210 atoi test: ASCII string: -9885 pigs integer: -9885 atol test: ASCII string: 98854 dollars long: 98854
إذا لم يكن هذا ما تقصده فأرجو التوضيح
مع التحيات.
هذا الموضوع مغلق.