«c» etiketlenmiş sorular

C, sistem programlama (OS ve gömülü), kütüphaneler, oyunlar ve çapraz platform için kullanılan genel amaçlı bir programlama dilidir. Bu etiket, ISO 9899 standardında tanımlandığı gibi C dili ile ilgili genel sorularla kullanılmalıdır (aksi belirtilmedikçe en son sürüm 9899: 2018 - c89, c99, c11 vb. İle sürüme özgü istekleri de etiketleyin). C, C ++ 'dan farklıdır ve rasyonel bir nedenden yoksun C ++ etiketi ile birleştirilmemelidir.

13
C'deki catch ifadelerini deneyin
Bugün başka dillerde var olan dene / yakala bloklarını düşünüyordum. Bir süre Google'da arandı, ancak sonuç yok. Bildiğim kadarıyla C'de dene / yakala diye bir şey yok. Ancak, onları "simüle etmenin" bir yolu var mı? Elbette, assert ve başka hileler var, ancak dene / yakala gibi hiçbir şey, yükseltilmiş istisnayı …
105 c 

16
bir karakter dizisini temizleme c
İlk öğeyi bir boşa ayarlamanın, bir char dizisinin tüm içeriğini temizleyeceğini düşündüm. char my_custom_data[40] = "Hello!"; my_custom_data[0] = '\0'; Ancak, bu yalnızca ilk öğeyi null olarak ayarlar. veya my_custom_data[0] = 0; Kullanmak yerine memset, yukarıdaki 2 örneğin tüm verileri temizlemesi gerektiğini düşündüm.
104 c  arrays  char 

10
Bir yapıyı indekslemek yasal mı?
Kod ne kadar 'kötü' olursa olsun ve hizalamanın vb. Derleyici / platformda bir sorun olmadığını varsayarsak, bu tanımsız veya bozuk davranış mı? Bunun gibi bir yapım varsa: - struct data { int a, b, c; }; struct data thing; Öyle mi hukuki erişim a, bve colarak (&thing.a)[0], (&thing.a)[1]ve (&thing.a)[2]? Her …
104 c++  c  struct 

9
C auto anahtar sözcüğü nerede kullanılır?
Üniversite günlerimde autoanahtar kelimeyi okudum ve zamanla ne olduğunu gerçekten unuttum. Şu şekilde tanımlanır: yerel bir değişkeni yerel bir ömre sahip olarak tanımlar Hiçbir yerde kullanıldığını hiç bulamadım, gerçekten kullanılıyor mu ve eğer öyleyse nerede ve hangi durumlarda kullanılıyor?
104 c 

6
Yapı tanımları .h mi yoksa .c dosyası mı olmalı?
Hem structüstbilgilerde hem de yalnızca bildirimlerde s'nin tam tanımlarını gördüm - bir yöntemin diğerine göre avantajı var mı? Eğer bir fark yaratırsa, genellikle böyle bir yapı yazdım .h typedef struct s s_t; Düzenle Açık olmak gerekirse, seçenekler başlık dosyasında bildirim ve sınıftaki tanım veya başlık dosyasında hem bildirim hem de …
104 c  header  struct 

7
C / C ++ makrosunda virgül
Böyle bir makromuz olduğunu varsayalım #define FOO(type,name) type name Hangi gibi kullanabiliriz FOO(int, int_var); Ancak her zaman bu kadar basit değil: FOO(std::map<int, int>, map_var); // error: macro "FOO" passed 3 arguments, but takes just 2 Tabii ki yapabiliriz: typedef std::map<int, int> map_int_int_t; FOO(map_int_int_t, map_var); // OK ki bu çok ergonomik …
104 c++  c  macros  c-preprocessor 

13
Neden bir dizi parametresinin boyutu main içindeki ile aynı değil?
Parametre olarak gönderilen bir dizinin boyutu neden main içindeki ile aynı değil? #include <stdio.h> void PrintSize(int p_someArray[10]); int main () { int myArray[10]; printf("%d\n", sizeof(myArray)); /* As expected, 40 */ PrintSize(myArray);/* Prints 4, not 40 */ } void PrintSize(int p_someArray[10]){ printf("%d\n", sizeof(p_someArray)); }
104 c  arrays  function  sizeof 


2
GCC -g vs -g3 GDB Bayrağı: Fark Nedir?
C kaynak kodunu gcc veya Clang ile derlerken, -ggdb için hata ayıklama bilgisi oluşturmak için her zaman bayrağı kullanırım. gcc -g -o helloworld helloworld.c Bunun -g3yerine bazılarının tavsiye ettiğini fark ettim . -gVe -g3bayraklar arasındaki fark nedir ? Ayrıca -gve arasında bir fark var -ggdbmı?
104 c  debugging  gcc  gdb  clang 

7
C'de onaltılık karakterleri yazdırma
Bir satır karakter okumaya çalışıyorum, sonra karakterlerin onaltılık eşdeğerini yazdırıyorum. Örneğin "0xc0 0xc0 abc123", ilk 2 karakterin c0onaltılık olduğu ve kalan karakterlerin abc123ASCII olduğu bir dizem varsa, o zaman şunu almalıyım c0 c0 61 62 63 31 32 33 Ancak printfkullanmak %xbana ffffffc0 ffffffc0 61 62 63 31 32 33 …
104 c  hex  printf 


7
CRC32 sağlama toplamı nasıl hesaplanır?
Belki de görmüyorum, ama CRC32 ya gereksiz yere karmaşık görünüyor ya da internette bulabildiğim herhangi bir yerde yeterince açıklanmıyor. Mesaj değerinin taşınmaya dayalı olmayan aritmetik bölümünden kalan kısmının (üretici) polinomuna bölündüğünü anlıyorum, ancak gerçek uygulaması benden kaçıyor. CRC Hata Algılama Algoritmaları İçin Ağrısız Bir Kılavuz okudum ve ağrısız olmadığını söylemeliyim. …
104 c  checksum  crc32 

4
-D_XOPEN_SOURCE ne anlama geliyor / ne anlama geliyor?
Geçenlerde gcc'nin bu arg olmadan derleyemeyeceği bir kodla karşılaştım. Gcc man sayfasını kontrol ettim, ancak bu belirli seçeneği bulamadım. Buldum XOPEN_SOURCEama ne yaptığına dair çok az açıklama vardı. Biri lütfen ayrıntılandırabilir mi? Ben biliyorum -D_XOPEN_SOURCEfarklı değerlere, böyle ayarlanabilir 400, 600bu do ne ama?
104 c  gcc 

6
Visual Studio'da C programlama
C programlamayı öğrenmek için Visual Studio'yu kullanabilir miyim? Yeni proje menüsünde Visual Basic, Visual C #, Visual C ++, Visual F # ve diğerleri arasından seçim yapabiliyorum ancak "C" veya "Visual C" görmüyorum.
104 c  visual-studio 


Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.