C# tili CLS(Common Language Specification) ga mos keladigan keng tiplar to`plamini taqdim etadi. Bu tiplar NET platformasiga mos keladi yani C# da hosil qilingan obyektlar NET CLS qo`llab quvvatlaydigan har qanday dasturlash tilida foydalanish mumkin (masalan VB.NET). Har bir tip aniq o`zining o`zgarmas o`lchamiga ega. Quyida C# tomonidan taqdim etilgan tiplar ro`yhati jadvalda keltirilgan:
Yuqoridagiga qo`shimcha tarzda C# da yana enum, struct tipidagi obyektlar ham bor.
C# Identifikator
Odatda dasturlar turli sonli va boshqa tipdagi ma’lumotlarni qayta ishlash uchun yoziladi. Bitta dastur tarkibida uchraydigan ma’lumotlarni bir-biridan farqlash uchun nomlash lozim bo‘ladi va bunday nomlar identifikator deb ataladi.
Identifikator muayyan bir vaqtda ifodalab turgan son yoki boshqa turdagi ma’lumot uning qiymati hisoblanadi. Dasturda qatnashgan har bir identifikator uchun kompyuter xotirasidan ma’lum bir joy ajratiladi hamda bu joyga uning qiymati yozib qo‘yiladi va saqlanadi. Identifikatorlar doim lotin harflari bilan boshlanadi. Ularni yozish uchun zarur bo‘lgan keyingi belgilar esa lotin harflari, raqamlar va "_" (tagiga chizish) belgisidan iborat bo‘lishi mumkin:
Y, Yl, d8, asdr12k, ism, daftar_hajmi.
Dastlabki to‘rtta identifikator sintaktik jihatdan to‘g‘ri yozilgan, ammo identifikatorlarni bunday yozish katta hajmli dasturlarni ishlab chiqishda ma’lum bir qiyinchiliklarni tug‘dirishi mumkin. Chunki, ular o‘zlari ko‘rsatayotgan ma’lumotlarni to‘la va tushunarli qilib ifodalay olmaydi. Natijada bunday identifikatorlarni boshqasi bilan almashtirib yuborish ehtimolligi ortadi hamda ana shu dasturni o‘qish va tushunish qiyinlashib ketadi. Shuning uchun identifikatorlarni keyingi ikkitasi kabi belgilash maqsadga muvofiq hisoblanadi. Chunki ular o‘zlari ifodalayotgan o‘zgaruvchilarni ma’lum bir darajada izohlab turadi va shu bilan bog‘liq anglashilmovchiliklarga barham berishda muhim ahamiyat kasb etadi.