الأساسيات

أنواع البيانات

بالنسبة لأنواع بيانات المتغيرات في لغة غو, فهي لا تختلف كثيراً عمّا هي عليه في لغات البرمجة الشهيرة

 

  • فلدينا متغيرات نصية string

 

  • و عددية حقيقية int , int8. int16, int32, int64, حيث تتراوح مجالاتها كالتالي:

int8: -128 to 127

int16: -32768 to 32767

int32: -2147483648 to 2147483647

int64: -9223372036854775808 to 9223372036854775807

int: -2147483648 to 2147483647 in 32 bit systems and -9223372036854775808 to 9223372036854775807 in 64 bit systems

 

  • و عددية موجبة حصراً uint, uint8, uint16, uint32, uint64

uint8: 0 to 255

uint16: 0 to 65535

uint32: 0 to 4294967295

uint64: 0 to 18446744073709551615

uint: 0 to 4294967295 in 32 bit systems and 0 to 18446744073709551615 in 64 bit systems

 

  • و عشرية float32, float64

أو ماتُعرف بـ single percision float و double percision float

 

  • و منطقية بوليانية bool

حيث تكون true أو false

 

  • أو أرقام عقدية (فيها جزء غير حقيقي i)

complex64: أرقام عقدية فيها أجزاء حقيقية وغير حقيقية float32
complex128: أرقام عقدية فيها أجزاء حقيقية وغير حقيقية float64

 

 

وقد تأخذ بعض هذه الأنواع أسماء اخرى مستعارة Aliases 

حيث لدينا النوع byte وهو عدد حقيقي موجب حصراً من 8 بيتات uint8

و رون rune وهو عدد حقيقي int32

 

 

التحويل بين الأنواع Type Conversion

لغة غو متشددة جداً فيما يخص أنواع البيانات والتحويل بينها أو إجراء عمليات حسابية بين الأنواع المختلفة

فمثلاً, من غير المسموح القيام بعملية جمع بين رقم من نوع int ورقم من نوع float64, وغيره الكثير من المحظورات التي سنناقشها لاحقاً وطرق معالجتها .

 

 

ملاحظة: يمكنك تشغيل أكواد وأمثلة لغة غو من خلال GoLang Playground أو GoPlay.Space .

نبذة عن الكاتب

Firas M. Darwish

Software Engineer, PHP/Laravel, C#, GoLang, founder of ArGoLang.com & others ..

شاركنا رأيك :)