English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
在Erlang,所有的变量都与‘ =’语句绑定。所有变量都需要以大写字母开头。在其他编程语言中,“ =”符号用于赋值,但不适用于Erlang。如前所述,变量是通过使用‘ =’语句定义的。
在Erlang中要注意的一件事是变量是不可变的,这意味着为了更改变量的值,需要将其销毁并重新创建。
上一章介绍了Erlang中的以下基本变量-
Numbers−يُستخدم لتمثيل الأعداد الصحيحة أو العدد العشري. على سبيل المثال: 10.
الحقيقي −يُمثل القيمة الحالية، يمكن أن يكون true أو false.
النص الثنائي−استخدم النص الثنائي لتخزين منطقة ذاكرة غير النوعية. على سبيل المثال: << 40,50 >>.
الزوج−الزوج هو نوع بيانات مركب يحتوي على عدد ثابت من العناصر. على سبيل المثال: {40,50}.
الخريطة−الخريطة هي نوع بيانات مركب يحتوي على عدد متغير من الصِلات المفتاح-قيمة. كل صلة مفتاح-قيمة تُسمى زوجًا. على سبيل المثال: {type => person،age => 25}.
القائمة−القائمة هي نوع بيانات مركب له عدد متغير. على سبيل المثال: [40,40].
نحو إعلان المتغيرات العامة كالتالي-
اسم المتغير = قيمة المتغير
حيث،
اسم المتغير −هذا هو اسم المتغير.
قيمة المتغير −هذا هو القيمة الم绑定 إلى المتغير.
إليك مثالاً على إعلان المتغيرات-
مثال -module(helloworld). -export([start/0]). X = 40, Y = 50, Result = X + Y, io:fwrite("~w",[Result]).
في هذا المثال، لدينا متغيران، الأول هو X الم绑定 إلى القيمة 40، والثاني هو Y الم绑定 إلى القيمة 50. والثاني يسمى Result الم绑定 إلى جمع X وY.
الخروج من البرنامج المذكور أعلاه سيكون كالتالي
90
كما ذكرنا سابقًا، يجب أن تبدأ أسماء المتغيرات بأحرف كبيرة. دعنا نأخذ مثالاً على المتغيرات المعلنة بالصغر.
مثال -module(helloworld). -export([start/0]). X = 40, Y = 50, result = X + Y, io:fwrite("~w",[Result]).
إذا حاولت تجميع البرنامج المذكور أعلاه، فسيظهر لك خطأ تجميعي كما يلي.
helloworld.erl:8: متغير 'Result' غير مرتبط
ثم، يمكن تخصيص جميع المتغيرات مرة واحدة فقط. دعنا نأخذ مثالاً على تخصيص متغير أكثر من مرة.
مثال -module(helloworld). -export([start/0]). X = 40, Y = 50, X = 60, io:fwrite("~w",[X]).
إذا حاولت تجميع البرنامج المذكور أعلاه، فستحصل على خطأ تجميعي كما يلي.
helloworld.erl:6: تنبيه: المتغير 'Y' غير مستخدم helloworld.erl:7: تنبيه: لن يتم مطابق أي بند أبداً helloworld.erl:7: تنبيه: حاجز هذا البند يقيّم إلى 'false'
في هذا الفصل، سنناقش كيفية استخدام الوظائف المختلفة للطبع.
عليك أن تكون قد رأيت هذا (io:fwrite) في جميع البرامج السابقة.fwrite函数是“ io”模块或Erlang的一部分,可用于在程序中输出变量的值。
الوظائف هي جزء من مكتبة io أو جزء من Erlang، يمكن استخدامها لعرض قيمة المتغيرات في البرنامج.
مثال -module(helloworld). -export([start/0]). start() -> X = 40.00, Y = 50.00, io:fwrite("~f~n",[X]),
io:fwrite("~e",[Y]).
الناتج 40.000000
5.00000e+1
بالنسبة للبرنامج المذكور أعلاه، يجب مراعاة النقاط التالية. ~
−هذا الرمز يشير إلى أنه يجب تنسيق الناتج.~f
−الرقم المطلوب هو عدد عشري، يكتب ك[-] ddd.ddd، حيث يكون precision عدد الأرقام بعد نقطة. القيمة الافتراضية للدقة هي 6 ولا يمكن أن تكون أقل من 1.−printlnهذا يعني طباعة على سطر جديد.
~e−الرقم المطلوب هو عدد عشري، يكتب ك[-] d.ddde + -ddd، حيث يكون precision عدد الأرقام المكتوبة. القيمة الافتراضية للدقة هي 6 ولا يمكن أن تكون أقل من 2.