المساعدة - البحث - قائمة الأعضاء - التقويم
نسخة كاملة: التحويل من النص الى الأرقام
برمجة - شبكات - كمبيوتر - منتديات الفريق العربي للبرمجة > منتديات لغات البرمجة العام > منتدى مبرمجي C و ++C و C++.NET > أرشيف منتدى قسم السي ++
عنق الزجاجة
السلام عليكم regular_smile.gif

أريد منكم شرح كيفية تحويل المتغيرات النصية الى متغيرات رقمية regular_smile.gif عشان توضح الصورة أكثر ، لو أردت تخزين قيمة التايمر للثواني فإنه سيكون بين 0 - 59 ، ودي أخزنه في متغير من نوع int sad.gif ، ما هو المطلوب ، مع الشكر الجزيل regular_smile.gifregular_smile.gifregular_smile.gif
Adel Khayata
السلام عليكم.
لم أفهم سؤالك بشكل صحيحregular_smile.gifماذا تقصد بتخزين قيمة التايمر للثواني ؟؟!!
على كل إذا كان قصدك تحول الأرقام المصاغة بشكل نص مثل : "123" إلى رقم تستطيع تنفيذ العمليات الحسابية عليه فعليك استخدام التوابع:
atoi للتحويل من نص إلى عدد من نوع int
atol للتحويل من نص إلى عدد من نوع long
atof للتحويل من نص إلى عدد من نوع double
وهذا مثال يوضح كيفية استخدامها ( مقتبس من MSDN )
[code2]
#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 );
}
[/code2]
وستكون النتيجة التي ستظهر من المثال السابق كالتالي :
[code2]
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
[/code2]
إذا لم يكن هذا ما تقصده فأرجو التوضيح
مع التحيات.
هذه "نسخة - خفيفة" من محتويات الرئيسية للإستعراض الكامل مع المزيد من الصور والخيارات الرجاء إضغط هنا.
Invision Power Board © 2001-2009 Invision Power Services, Inc.