اهلا وسهلا بك فى بوابة الثانوية العامة ... سجل الان

  #1  
قديم 23-02-2013, 12:40 AM
الصورة الرمزية Mr.Ali Mohamed Ali
Mr.Ali Mohamed Ali Mr.Ali Mohamed Ali غير متواجد حالياً
معلم حاسب آلي
 
تاريخ التسجيل: Dec 2010
العمر: 52
المشاركات: 309
معدل تقييم المستوى: 15
Mr.Ali Mohamed Ali is on a distinguished road
افتراضي char

سألني أحد طلابي سؤال :

هو النوع char مش بيخزن حرف واحد وأنت قلت لنا الحرف الواحد يخزن في خلية واحدة من خلايا الذاكرة يعني 1Byte... طيب ليه بيأخذ خليتين من خلايا الذاكرة لو أعلنا عن بيان نوعه char ؟ .....



قلت له :

هو يمثل حرف واحد فقط من حروف Unicode لذلك لا يمكن أن تحمل قيمة حرفيه تزيد عن حرف واحد، كما يشرط استخدام حرف الذيل "C" حتى تميز القيمة الحرفية من النوع "char" عن النوع "String"

مثال :

Dim A as char
A="D"C
هو الذيل ده C مش عاوز خلية زيادة يتخزن فيها ؟؟؟

وبمناسبة هذا النوع من البيانات .... هو إحنا متى نحتاجه وما الجدوى منه أساساً رغم إمكانياته المحدودة..؟؟؟


السبب ببساطة السرعة في التنفيذ والاقتصاد في استهلاك مصادر النظام. حيث أن المتغيرات من نوع
char هي متغيرات من النوع ذات القيمة Value Type Variables وهي تمحى من الذاكرة مباشرة بعد نهاية عمر المتغير بينما المتغيرات من النوع String هي متغيرات مرجعية Reference Type Variables وفي الحقيقة لا تتم عملية إزالة قيمها من الذاكرة مباشرة بعد نهاية عمرها الافتراضي، فهي تتطلب عملية تسمى إفراغ المصادر .


أيوة أنا أضطررت للخروج عن المنهج لأفسر وأشرح لطالبي ما أراد ربما يكبر يوماً ويعمل مبرمجاً محترفاً ويتذكر كلامي .... فأنا لا أستطيع أن أقول له الموضوع ده صعب عليك ومش هاتفهمه .... طالما أنه هو الذي سأل .... ومن يدري ربما فهم كلامي أو جزء منه .
رد مع اقتباس
  #2  
قديم 23-02-2013, 12:25 PM
tmrmsr tmrmsr غير متواجد حالياً
عضو ممتاز
 
تاريخ التسجيل: Aug 2012
المشاركات: 303
معدل تقييم المستوى: 13
tmrmsr is on a distinguished road
Icon114

اقتباس:
المشاركة الأصلية كتبت بواسطة alysun مشاهدة المشاركة
سألني أحد طلابي سؤال :

هو النوع char مش بيخزن حرف واحد وأنت قلت لنا الحرف الواحد يخزن في خلية واحدة من خلايا الذاكرة يعني 1Byte... طيب ليه بيأخذ خليتين من خلايا الذاكرة لو أعلنا عن بيان نوعه char ؟ .....



قلت له :

هو يمثل حرف واحد فقط من حروف Unicode لذلك لا يمكن أن تحمل قيمة حرفيه تزيد عن حرف واحد، كما يشرط استخدام حرف الذيل "C" حتى تميز القيمة الحرفية من النوع "char" عن النوع "String"

مثال :

Dim A as char
A="D"C
هو الذيل ده C مش عاوز خلية زيادة يتخزن فيها ؟؟؟

وبمناسبة هذا النوع من البيانات .... هو إحنا متى نحتاجه وما الجدوى منه أساساً رغم إمكانياته المحدودة..؟؟؟


السبب ببساطة السرعة في التنفيذ والاقتصاد في استهلاك مصادر النظام. حيث أن المتغيرات من نوع
char هي متغيرات من النوع ذات القيمة Value Type Variables وهي تمحى من الذاكرة مباشرة بعد نهاية عمر المتغير بينما المتغيرات من النوع String هي متغيرات مرجعية Reference Type Variables وفي الحقيقة لا تتم عملية إزالة قيمها من الذاكرة مباشرة بعد نهاية عمرها الافتراضي، فهي تتطلب عملية تسمى إفراغ المصادر .


أيوة أنا أضطررت للخروج عن المنهج لأفسر وأشرح لطالبي ما أراد ربما يكبر يوماً ويعمل مبرمجاً محترفاً ويتذكر كلامي .... فأنا لا أستطيع أن أقول له الموضوع ده صعب عليك ومش هاتفهمه .... طالما أنه هو الذي سأل .... ومن يدري ربما فهم كلامي أو جزء منه .
عملية إفراغ المصادر Release Resources منذ ظهور الدوت نت أصبحت CLR تحديدا GC هي المسئولة عن ذلك وهذا يعتبر ميزة كبيره لمطوري دوت نت حتي ينصب تركيزة على منطق البرنامج ... مجددا شكرا لك
رد مع اقتباس
  #3  
قديم 23-02-2013, 08:18 PM
الصورة الرمزية Mr.Ali Mohamed Ali
Mr.Ali Mohamed Ali Mr.Ali Mohamed Ali غير متواجد حالياً
معلم حاسب آلي
 
تاريخ التسجيل: Dec 2010
العمر: 52
المشاركات: 309
معدل تقييم المستوى: 15
Mr.Ali Mohamed Ali is on a distinguished road
افتراضي

اقتباس:
المشاركة الأصلية كتبت بواسطة tmrmsr مشاهدة المشاركة
عملية إفراغ المصادر Release Resources منذ ظهور الدوت نت أصبحت CLR تحديدا GC هي المسئولة عن ذلك وهذا يعتبر ميزة كبيره لمطوري دوت نت حتي ينصب تركيزة على منطق البرنامج ... مجددا شكرا لك

Garbage Collection

الشكر الجزيل لك .... أعول عليك في مساعدتي في وضع خواطر وأمثلة وأفكار جديدة تشرح وتوضح المنهج لإخواننا حتى تعم الفائدة .
رد مع اقتباس
  #4  
قديم 04-03-2013, 02:37 AM
hanyway hanyway غير متواجد حالياً
عضو جديد
 
تاريخ التسجيل: Mar 2010
المشاركات: 14
معدل تقييم المستوى: 0
hanyway is on a distinguished road
افتراضي

استاذى العزيز هل درست ansi code وهو ان الحرف الكبير captial يكون اصغر من الحروف الصغيرة فمن اجل هذا الحروف الكبيرة تاخذ خليه واحد اما الحروف الصغيرة تاخذ خليتان
رد مع اقتباس
  #5  
قديم 04-03-2013, 04:41 PM
الصورة الرمزية Mr.Ali Mohamed Ali
Mr.Ali Mohamed Ali Mr.Ali Mohamed Ali غير متواجد حالياً
معلم حاسب آلي
 
تاريخ التسجيل: Dec 2010
العمر: 52
المشاركات: 309
معدل تقييم المستوى: 15
Mr.Ali Mohamed Ali is on a distinguished road
افتراضي

هناك فرق بين شفرة ANSI و شفرة Unicode
نوع البيانات لشفرة ANSI هو char
و نوع البيانات لشفرة Unicode هو WCHAR
حجم char على الذاكرة كحجم أصغر نوع بيانات و الذي هو BYTE و حجمهما 1byte
حجم WCHAR يساوي 2byte

الفرق الأول عند العمل على شفرة ANSI فنحن نستخدم نصف حجم الذاكرة
و التي نعمل بها على شفرة Unicode

الفرق الثاني خلاصته أن شفرة Unicode تدعم Characters أكثر
من دعم شفرة ANSI لــــ Characters

بمعنى الحروف و الأرقام العربية و بعض الإضافات مدعومة على الشفرتين إلا أن
هناك بعض من الـ Characters لا يدعم إلا على شفرة Unicode و هي Characters
إضافية و منها ما يتعلق بالرموز القرآنية كعلامة السجدة و الحزب و بعض الرموز
بعلم الرياضيات . .......


بالله عليك هو الأخوة هنا ناقصين الكلام ده .... أدخل في المنهج وساعدنا أكرمك الله . فأنا لم أقصد الخروج عن المنهج إلى هذا الحد .
__________________
دمي ......... فداكي يامصر .
رد مع اقتباس
  #6  
قديم 09-04-2013, 01:19 AM
professor2010 professor2010 غير متواجد حالياً
عضو جديد
 
تاريخ التسجيل: Oct 2010
المشاركات: 31
معدل تقييم المستوى: 0
professor2010 is on a distinguished road
افتراضي

ممكن تذود على هذا الكلام ان مع هذا المتغير يمكن عمل برنامج للاطفال نضع الحرف كبتل ونتظر الاجابة بصمول

ارجو ان اكون اضفت لك شئ
رد مع اقتباس
  #7  
قديم 09-04-2013, 11:59 AM
الصورة الرمزية Mr.Ali Mohamed Ali
Mr.Ali Mohamed Ali Mr.Ali Mohamed Ali غير متواجد حالياً
معلم حاسب آلي
 
تاريخ التسجيل: Dec 2010
العمر: 52
المشاركات: 309
معدل تقييم المستوى: 15
Mr.Ali Mohamed Ali is on a distinguished road
افتراضي

اقتباس:
المشاركة الأصلية كتبت بواسطة professor2010 مشاهدة المشاركة
ممكن تذود على هذا الكلام ان مع هذا المتغير يمكن عمل برنامج للاطفال نضع الحرف كبتل ونتظر الاجابة بصمول

ارجو ان اكون اضفت لك شئ
أشكرك والله فكرة حلوة ..... طيب ممكن تساعدني في تنفيذها .
__________________
دمي ......... فداكي يامصر .
رد مع اقتباس
إضافة رد

العلامات المرجعية

أدوات الموضوع
انواع عرض الموضوع

ضوابط المشاركة
لا تستطيع إضافة مواضيع جديدة
لا تستطيع الرد على المواضيع
لا يمكنك اضافة مرفقات
لا يمكنك تعديل مشاركاتك

BB code متاحة
كود [IMG] متاحة
كود HTML معطلة

الانتقال السريع


جميع الأوقات بتوقيت GMT +2. الساعة الآن 09:32 AM.