متغير محرفي (حوسبة)

تشار (بالإنجليزية: char)‏ في لغة البرمجة هو نوع من البيانات، في وثائق بوزيكس تم تعريف «التشار» على انه سلسلة متكونة من بايت أو أكثر لتشكل محرف، ومع ذلك بقي مصطلح تشار نوع من البيانات بحجم 8 بت في العديد من لغات البرمجة مثل C + + ونفس الشيء لـ C سي [1] ، لغات أخرى مثل جافا التشار يستخدم 16 بت.[2]

التشار قد يكون كبيرة بما يكفي لاحتواء أي محرف.[3] تاريخيا كانت المحارف تخزن في بايت واحد، سبب هذا قيود عند زيادة الرموز في الحاسوب، استعمل أكثر من تشار واحد ليمثل الرموز و المحارف لكن أدى إلى خلط بين المصطلحات ( تشار سلسلة بايتات) أو ( تشار حجمه 1 بايت ) .[4] هذا ما يجعل الكثير من الوثائق مربكة أو مضللة عندما تستخدم تشار متعدد البايتات للتعامل مع المحارف.

التعامل مع تشار

في لغة مثل C والباسكال، يتم تخزين الرموز في سلاسل من تشار لتكوين الجمل النصية وأخر بايت من الجملة يحمل قيمة "0" للدلالة على نهاية النص. يتم الوصول وتغيير المحارف بواسطة المؤشرات ويمكن كذلك استخدام المصفوفة.

أمثلة

تشار في لغة البرمجة سي C

في سي C تشار عبارة عن 8 بت وهو قيمة رقمية، يعطيها القدرة على تمثيل كل رموز أسكي من 0 إلى 255.

char ch = 'a';
printf("%d", ch);

الشار لا يحمل نص، لكن يمكن هذا عند استعماله كمصفوفة أو مؤشر الإعلان عنه كمصفوفة :

char mydata[] = "salam";

كيفية الإعلان عنه كمؤشر

char *p = "salam";

تشار يستطيع حمل رمز واحد فقط :

char mydata;
mydata = 'x';

تشار في الجافا

في الجافا تشار عبارة عن 16 بت وهو قيمة رقمية، يعطينا القدرة على تمثيل كل رموز يونيكود.

char choice='س';
System.out.println(choice);

يتم التعامل مع الجمل والنصوص بمتغير أخز.

مراجع

  1. ‘C’ Coding Techniques for Intel Architecture Processors- Intel Corporation، اطلع عليه بتاريخ 16-08-2014 [وصلة مكسورة] نسخة محفوظة 26 يناير 2020 على موقع واي باك مشين.
  2. Character-docs.oracle، اطلع عليه بتاريخ 16-08-2014 نسخة محفوظة 24 ديسمبر 2017 على موقع واي باك مشين.
  3. Migrating to Unicode, Part I- Josh Kelley، اطلع عليه بتاريخ 16-08-2014 نسخة محفوظة 26 يناير 2020 على موقع واي باك مشين.
  4. - by Hans Walheim, IAR Systems ، اطلع عليه بتاريخ 16-08-2014 [وصلة مكسورة] نسخة محفوظة 16 أغسطس 2012 على موقع واي باك مشين.
  • بوابة برمجة الحاسوب
This article is issued from Wikipedia. The text is licensed under Creative Commons - Attribution - Sharealike. Additional terms may apply for the media files.