«c» etiketlenmiş sorular

C, işletim sistemleri, oyunlar ve diğer yüksek performanslı işler için kullanılan genel amaçlı bir bilgisayar programlama dilidir.

10
“Değişkenleri her zaman başlatır”, önemli hataların gizlenmesine neden olmaz mı?
C ++ Çekirdek Kuralları ES.20 kuralına sahiptir: Her zaman bir nesneyi başlat . Kullanılan önceden ayarlanmış hatalardan ve bunların tanımsız davranışlarından kaçının. Karmaşık başlatmanın anlaşılmasıyla ilgili sorunlardan kaçının. Yeniden düzenlemeyi basitleştirin. Fakat bu kural böcek bulmaya yardımcı olmaz, sadece onları gizler. Bir programın başlatılmamış bir değişken kullandığı bir yürütme yoluna …
35 c++  c 

8
Clang / LLVM neden tüm numaralandırılmış durumların ele alındığı bir switch ifadesinde varsayılan kullanım konusunda beni uyarıyor?
Aşağıdaki enum ve switch deyimini göz önünde bulundurun: typedef enum { MaskValueUno, MaskValueDos } testingMask; void myFunction(testingMask theMask) { switch (theMask) { case MaskValueUno: {}// deal with it case MaskValueDos: {}// deal with it default: {} //deal with an unexpected or uninitialized value } }; Ben bir Objective-C programcısıyım, ancak …




7
C Performansı için Yazma? [kapalı]
C'nin genellikle C ++ 'a göre performans avantajı olduğunu çok sık duyduğumu biliyorum. MSVC'nin en yeni C standardını desteklemediğini bile fark edene kadar başka hiçbir şey düşünmedim, ama en yenisi C99'u (bildiğim kadarıyla) destekliyor. Yeniden kullanabilmem için OpenGL'de işlemek için bazı kodlar içeren bir kütüphane yazmayı planlıyordum. Kütüphaneye C yazmayı …

11
typedefs ve #defines
Hepimiz kesinlikle kullanmış typedeflar ve #definebir kez ya da başka bu. Bugün onlarla çalışırken bir şey üzerinde düşünmeye başladım. intVeri türünü başka bir adla kullanmak için aşağıdaki 2 durumu göz önünde bulundurun : typedef int MYINTEGER ve #define MYINTEGER int Yukarıdaki durum gibi, birçok durumda da #define kullanarak bir şeyi …

13
Düşük seviye programlama - benim için içinde ne var? [kapalı]
Yıllarca "düşük seviyeli" dilleri düşündüğüm şeyi kazmayı düşündüm. Benim için bu C ve montaj anlamına gelir. Ancak henüz bunun için zamanım olmadı, hiç de gerekli olmadı. Artık ortaya çıkan bir gereksizlik göremediğim için, konuyu çalışacağım ya da planı sonsuza dek bırakacağım zamanları bir zamanlama yapmam gerektiğini hissediyorum. Pozisyonum Son 4 …

8
Doğrudan yapmak eski moda kabul edilir mi? [kapalı]
Bu yüzden doğrudan makefiles oluşturma ve 2015'te yapılacak aptalca bir şey hakkında birçok yorum / yazı / vb ile karşılaşıyorum. CMake gibi araçların farkındayım ve aslında CMake'i oldukça sık kullanıyorum. Mesele şu ki, CMake sadece sizin için Makefile'ı yaratıyor ve kendin yapmanın zorluğunu gidermeye yardım ediyor. Tabii ki birçok başka …
31 c++  c  builds  make  cmake 

2
C İşlemcisinin kökeni nedir?
C önişlemcisi C'ye eklidir, ancak ana dilden tamamen farklı bir sözdizimine sahiptir: sözdizimsel olarak anlamlı boşluk (satırın sonu bir ifadeyi sonlandırır, makro değiştirme listesinin başlangıcını belirledikten sonra boşluk) parantezli bloklar yerine anahtar kelime tabanlı bloklar elif,else if beyan yerine yansıtan anahtar kelimeli tanımlamalar-yansıtır-kullanım, =değer tanımı için hayır alternatif bir dize …
30 c  history  macros 


10
İşaretçilerin C dilinde tuttuğu verilerin türü nedir?
İşaretçilerin adresleri olduğunu biliyorum. İşaretçilerin türlerinin, işaret ettikleri veri türüne göre "genellikle" bilindiğini biliyorum. Ancak, işaretçiler hala değişkendir ve sahip oldukları adreslerin "type" verisine sahip olması gerekir. Bilgilerime göre, adresler onaltılık biçimdedir. Ancak, hala "on" veri türünün bu onaltılık olduğunu hala bilmiyorum. (Onaltılık olanın ne olduğunu bildiğime dikkat edin, ancak …
30 c  pointers 


2
C string değişmezleri neden salt okunur?
Dize değişmezlerin salt okunur olmasının avantajları: (-ies / -ied): Kendini ayağından vurmanın başka bir yolu char *foo = "bar"; foo[0] = 'd'; /* SEGFAULT */ Okuma-yazma sözcük dizisini tek bir satırda zarif bir şekilde başlatamamak: char *foo[] = { "bar", "baz", "running out of traditional placeholder names" }; foo[1][2] = …
29 c  memory  strings 


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.