C sistem proqramlaşdırma (OS və quraşdırılmış), kitabxanalar, oyun və cross-platform üçün istifadə edilən ümumi təyinatlı proqramlaşdırma dilidir. Bu etiket ISO 9899-da (ən son versiya, 9899: 2018, başqa cür göstərilmədiyi təqdirdə - c89, c99, C11, və s. Sorğuların xüsusi versiyaları üçün etiketlər) müəyyən edilmiş ümumi C dil sualları ilə istifadə olunmalıdır. C + + 'dan fərqli və C ++ etiketiylə birləşə bilməz, bu da rasyonel bir səbəb deyil.

C ("C" hərfi C kimi) , 1969-1973-cü illərdə Denis Ritchie tərəfindən Bell Telefon laboratoriyalarında UNIX əməliyyat sistemi ilə istifadə üçün hazırlanmış ümumi məqsədi proqramlaşdırma dilidir. Dizaynı, tipik maşın talimatlarına effektiv şəkildə uyğunlaşdıran konstruksiyalar təmin edir və buna görə də daha əvvəl montaj dilində kodlaşdırılmış tətbiqlərdə uzun müddətli istifadə tapmışdır. Funksiyalara diqqət yetirən yüksək effektli prosessual proqramlaşdırma dili, müasir obyektlərə yönəlmiş proqramlaşdırma dilləri isə məlumatları vurğulamağa meyllidir.

C proqramlaşdırma dili əvvəllər B, BCPL və CPL proqramlaşdırma dillərinə əsaslanırdı .

C dili və onun əlavə kitabxanası ISO / IEC 9899 standartıdır, mövcud versiya ISO / IEC 9899: 2018 (C17) təşkil edir. N2176 versiyasının layihəsi pulsuzdur.

C sistem proqramını tətbiq etmək üçün nəzərdə tutulmasına baxmayaraq, portativ proqram təminatı inkişaf etdirmək üçün geniş yayılmışdır.

C, bütün zamanların ən çox istifadə edilən proqramlaşdırma dillərindən biridir və C kompilyatorunun mövcud olmadığı üçün çox az kompüter arxitekturası var. C digər bir çox populyar proqramlaşdırma dillərini, xüsusilə də C-nin bir uzantısı kimi başlayan C ++-yı çox təsir etmişdir. C-lərin C, Objective-C və Java kimi təsir göstərdiyi digər dillər.


dizayn

C bir zəruri ( prosessual ) sistem tətbiq dilidir. Yaddaşa aşağı səviyyədə çıxış imkanı təmin etmək üçün nisbətən sadə bir kompilyatordan tərtib olunmaq, maşın təlimatlarına təsirli olan dil konstruksiyaları təmin etmək və icrası zamanı minimal dəstək tələb etmək üçün tərtib edilmişdir. Buna görə C əvvəllər montaj dilində yazılmış bir çox ərizə üçün faydalı idi.

Onun aşağı səviyyəli bacarıqlarına baxmayaraq, dil cross-platform proqramlaşdırma dəstəkləmək üçün hazırlanmışdır. Standartlara uyğun və portativ C proqramı, çox sayda kompüter platforması və mənbə kodunun minimal dəyişiklikləri olan əməliyyat sistemləri üçün tərtib edilə bilər. Dil, quraşdırılmış mikrokreditlərdən superkompüterlərə qədər çox geniş platformada mövcud olmuşdur.


etiketləri istifadə edin

C-də proqramlaşdırma ilə bağlı sualları dərc edərkən, əmin olun:

  • Hədəf sistemi və kompilyator haqqında məlumat. Bu tərtib etmək üçün istifadə edilən kompilyator adı, versiyası və parametrləri daxildir.
  • Sualınız müəyyən bir dil versiyasına , və ya . Pre-standart tarixi suallar kimi qeyd edilməlidir.
  • Sualda, C standartının hansı versiyasından istifadə edildiyini açıq şəkildə göstərmirsə, mövcud versiyanın istifadə olunduğu ehtimal edilir. Yəni ISO 9899-un istənilən versiyası ISO-lərin aktiv olaraq siyahıda olduğunu göstərir. Cavab verin və ya sual .

birlikdə istifadə

C və C ++ iki fərqli və tez-tez uyğun olmayan dillərdir. Yaxşı səbəblər olmadıqca, həmin sualları hər iki etiketdən də istifadə etməyin.

Bir sual yalnız qeyd olunmalıdır, əgər:

  • C ++ və ya hər hansı bir dil ola bilən kodu olan suallara baxmayaraq təmiz C ehtiva edir.
  • Kod C kompilyatoru ilə tərtib edilir.

Bir sual yalnız qeyd edilməlidir, əgər:

  • Hər hansı bir C ++ funksiyası olan kodu ehtiva edir. Kod kodu "C" ola bilər.
  • Kod, C ++ tərtibatçısı tərəfindən tərtib edilir.

Sual həm , həm də ilə qeyd edilməlidir.

  • C və C ++ arasındakı xüsusi fərqlər.
  • C və C ++ arasında uyğunluq və ya kod ötürülməsi.
  • C kitabxanalarını istifadə edən C ++ kodu (məsələn, extern "C" istifadə edən kod).

etiketlənən mesajların redaktə edilməsi və moderator qaydaları:

Hər iki etiket ilə düzəltmək / yenidən qeyd / düzəltmək üçün sualları düzəltmək üçün tam redaktə hüquqlarınızın olduğu kimi qızıl və ya qızıl simvolunuz olduğu məsləhət görülür.

Hər iki etiket ilə bir mesajla qarşılaşırsanız, yuxarıda göstərilən qaydalara uyğun olaraq, zəruri hallarda onu redaktə edin / yenidən qeyd edin. Yayınlanmış kodu oxuduğunuz bir dili söyləyə bilsəniz, yazıları düzəldin. Istifadəçi "C və ya C ++" sualını çəkinməyin? əgər sual həqiqətən aydın deyilsə şərhlərdə.

Anlaşıqlı bir sualın nümunəsi bir istifadəçi açıq şəkildə C-də proqramlaşdırma etdiyini bildirir, lakin C ++ üçün derivatın kodu və ya mesajlarından mesajlar dərc edir. Əgər belədirsə, dəqiqləşdirməyi xahiş et və açıq bir səs verməməsi aydın deyil.

"Ya C və ya C ++ yaxşıdır", OP fikirləri pis və ya qeyri-müəyyən bir sualın aydın göstəricisidir. Cavablar seçilən dildən asılı olaraq çox fərqli ola bilər. FI bunu aydınlaşdırana qədər aydınlıq gətirməyi tələb etməli, qeyri-müəyyən / çox geniş qala bilər.

Cavab göndərdikdən sonra sualları təkrar etiketlədikdə diqqətli olun, xüsusən də C və C ++-a cavab verdiyiniz halda. Belə hallarda etiketlər tək qoyulmalıdır, çünki onların dəyişdirilməsi dərc edilmiş cavabları ləğv edəcəkdir.

C ++ ilə qeyd edilməyən sual C ++ kodu ilə cavablar mövzuyla əlaqəli olmadığı kimi silinməlidir. Sualı C ++ etiketinin olmaması üçün bu cür cavabları silmək / silməkdən əvvəl sualların redaktə tarixini yoxlayın.


C

C. istifadə necə, müxtəlif keyfiyyətli müxtəlif kitablar yazmışdır. Sualın Təminatlı C Kitabı Kılavuzu və Siyahısına baxın .

Bu sualın mübahisəli olduğuna diqqət çəkin. bu, müasir yığma taşmalarında qəbul edilməyəcək, lakin hələ də dəstəklənən faydalı tarixi əsərdir.


Tez-tez verilən suallar (FAQ)

Növləri və təsnifləndiricilər

Bəyannamə və başlanğıc

Sahə və rəf həyat

Integer aritmetik

Üzən nöqtə aritmetik

Operatorlar, prioritet və qiymətləndirmə qaydası

Diziler

Göstərici və sıfır

İşarələrin göstəriciləri

Strings

Dinamik yaddaş ayırması

Struktur və birliklər

Preprocessor və Macros

Standarta uyğunluq

Undefined, müəyyənləşdirilməmiş və tətbiqi müəyyən davranış

Standart kitabxana

Ən yaxşı təcrübə və stil problemləri


Xarici resurslar


Hello World C proqramı

Yeni otaq C 

İnternet kompilyatorları