وجيه أمين محمد
09-03-2011, 05:35 PM
من المعروف ان المتغير من نوع char يقوم بتخزين حرف أو رقم واحد فقط وكل حرف أو رقم يتم تمثيله فى خلية واحدة اى 1Byte
وعند الاعلان عن متغير من نوع char فإنه يقوم بحجز خليتين من الذاكرة اى 2Byte
فما هذا التناقض ؟ أرجو التفسير
hamrag
16-03-2011, 01:58 AM
أخي العزيز ربما يكون هناك لبس ين المتغير Byte , و المتغير char
المتغير Byte يتم تخزين حرف أبجدي أو رقم من 127 الي -128 و هذا يلزم له حجز واحد بايت في الذاكرة
بينما المتغير char فيتم تخزين حرف من حروف الترميز الUNICODE و لذلك يلزم لها حجز 2 بايت في الذاكرة و هنا يتضح الفرق بين المتغييرن .
أرجو ان اكون قد وفقت في توضيح الفرق بين النوعين .
و لك كل الشكر و العرفان ................ مع تحياتي.
alimma
16-03-2011, 09:10 AM
مازال اللبث قائم لان
البيان من نوع ( BYTE ) بيان رقمى للارقام الصحيحة من ( 0 الى 255 ) و حجمه خلية واحدة اى 1 Byte فى الذاكرة
اما البيان CHAR فهو بيان حرفى او نصى حجمه خليتان فى الذاكرة اى ( 2 BYTE ) فما المقصود ب ( Unicode charcter)
مع تحياتى
hamrag
17-03-2011, 09:37 PM
عزيزي Alimm تحياتي لك :
بالنسبة للنوع byte يأخذ أعداد من 0 الي 255 بينمكات لكن قيمك هذه الاعداد من -128 الي 127
Unicode مثل ASCII، هو جدول يربط أغلب الأرقام و الحروف و الرموز الموجودة في لغات العالم بقيم عددية من 2 بايت (16 بت)، مما يعطيه إمكانية التعبير عن 65,563 محرفاً. يدعم في جميع أنظمة التشغيل المعتمدة تقنية NT، مثل WinXP، Win2000، WinNT و يتم تخزينه في المتغير من النوع Char.
مع تحياتي