تبلیغات
پروژه های رایگان برنامه نویسی و آموزش زبان C++ و C# - تبدیل نوع داده ها به یکدیگر در C#
 
برنامه بدون خطا رویاست Program is impossible without an error
پروژه های رایگان برنامه نویسی و آموزش زبان C++ و C#
صفحه نخست         تماس با مدیر         پست الکترونیک        RSS         ATOM
 
 

با سلام


تا جالا خیلی برای همه برنامه نویس ها پیش آمده است که بخواهند مقادیر از یک نوع داده را داخل نوع دیگری از داده بریزند و استفاده کنند


در C# هم این کار را به راختی می توان انجام داد و دو نوع تبدیل داریم

1- Implicit به صورت نهان   2- Explicit به صورت آشکار


 در تبدیل نوع  Implicit  یا نهان مثل ریختن آب یک لیوان داخل پارچ آب می باشد که به راختی انجام می شود مانند تبدیل int به Long

int x = int.MaxValue;

long y;

y = x;

این تبدیل هیچ ایرادی ندارد و به دلیل گنجایش بیشتر نوع داده Long به راحتی انجام می شود


اما در تبدیل نوع   Explicit یا آشکار مثل ریختن آب پارج داخل یک لیوان است که دو حالت پیش می آید اولی حالت این است که آب پارج به اندازه لیوان باشد و هیچ سر ریزی اتفاق نمی افتد و اما حالت دوم اگر پارچ پر باشد حتما سر ریزی اتفاق می افتد و این یک افتذاح بزرگ برنامه نویسی می باشد


در هیچ زبانی بابت این اتفاق به برنامه نویس هشدار داده نمی شود اما در C# این رویداد به برنامه نویس هشدار داده می شود .


long x = long.MaxValue;

int y ;

y = x;

این کد به هیچ وجه در سی شارپ اجرا نخواهد شد و از برنامه نویس می خواهد که یک casting آشکار انجام دهد در واقع  برنامه نویس با casting آشکار به کامپایلر می گوید که من می دانم چیکار می کنم فقط تبدیل را انجام بده . مثل کد زیر :


long x = long.MaxValue;

int y ;

y = ( int ) x;


با این کد 100 در 100  Overflow اتفاق می افتد ولی هیچ خطایی دیده نمی شود و یک افتذاح بزرگ رخ داده است .

اما در .net برای این مشکل هم چاره ای اندیشیده شده است مثال زیر :


دانلود فایل 


در این مثال از استثنا ها استفاده شده است


موفق باشید



 





نوع مطلب : آموزش برنامه نویسی #C، Ebook Dot Net 4، 
برچسب ها : OverflowException، checked، try - catch، Explicit Numeric Conversions، Casting،
لینک های مرتبط : Explicit Numeric Conversions Table، OverflowException Class،


 
لبخندناراحتچشمک
نیشخندبغلسوال
قلبخجالتزبان
ماچتعجبعصبانی
عینکشیطانگریه
خندهقهقههخداحافظ
سبزقهرهورا
دستگلتفکر


درباره وبلاگ

انجام پروژه های برنامه نویسی سی و سی پلاس پلاس و سی شارپ

انجام پروژه های الکترونیکی و رباتیکی

مدیر وبلاگ : سجاد سلطانی
مطالب اخیر
نویسندگان
جستجو

آمار وبلاگ
کل بازدید :
بازدید امروز :
بازدید دیروز :
بازدید این ماه :
بازدید ماه قبل :
تعداد نویسندگان :
تعداد کل پست ها :
آخرین بازدید :
آخرین بروز رسانی :














free counters
X بستن تبلیغات
X بستن تبلیغات