«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.

30
Algoritma: bir diziden yinelenen tam sayıları kaldırmanın etkili yolu
Bu sorunu Microsoft ile yaptığım bir röportajdan aldım. Rastgele bir tamsayı dizisi verildiğinde, C'ye yinelenen sayıları kaldıran ve orijinal dizideki benzersiz sayıları döndüren bir algoritma yazın. Örneğin Giriş: {4, 8, 4, 1, 1, 2, 9} Çıkış:{4, 8, 1, 2, 9, ?, ?} Bir uyarı, beklenen algoritmanın dizinin önce sıralanmasını gerektirmemesidir. …

3
CHAR_BIT nedir?
Http://graphics.stanford.edu/~seander/bithacks.html adresinden dallanmadan tamsayı mutlak değeri (abs) hesaplamak için kodun alıntılanması : int v; // we want to find the absolute value of v unsigned int r; // the result goes here int const mask = v >> sizeof(int) * CHAR_BIT - 1; r = (v + mask) ^ mask; …



5
gdb: "Hiçbir sembol tablosu yüklenmedi"
Gdb'ye bir kesme noktası eklemeye çalışırken bu hata mesajını almaya devam ediyorum. Bu komutları derlemek için kullandım: gcc -g main.c utmpib2.c -o main.o and: cc -g main.c utmpib2.c -o main.o and also: g++ -g main.c utmpib2.c -o main.o Ayrıca "-g" yerine "-ggdb" yi denedim ve hala bu hata mesajını alıyorum. …
93 c  gdb 

4
C ++ kodundan bir C işlevi çağırın
C ++ 'dan çağırmak istediğim bir C fonksiyonum var. extern "C" void foo()C işlevi g ++ kullanılarak derlenemediği için " " yaklaşımı kullanamadım. Ama gcc kullanarak iyi derler. C ++ 'dan işlevi nasıl çağıracağınıza dair bir fikriniz var mı?
93 c++  c  linux  extern-c 

7
imzasız veri türü nedir?
Bu unsigned"tipsiz" türün birkaç kez kullanıldığını gördüm, ancak bunun için bir açıklama görmedim. Sanırım karşılık gelen bir signedtürü var. İşte bir örnek: static unsigned long next = 1; /* RAND_MAX assumed to be 32767 */ int myrand(void) { next = next * 1103515245 + 12345; return((unsigned)(next/65536) % 32768); } void …
93 c  types  unsigned 

4
scanf () yeni satır karakterini arabellekte bırakır
Aşağıdaki programım var: int main(int argc, char *argv[]) { int a, b; char c1, c2; printf("Enter something: "); scanf("%d",&a); // line 1 printf("Enter other something: "); scanf("%d", &b); // line 2 printf("Enter a char: "); scanf("%c",&c1); // line 3 printf("Enter another char: "); scanf("%c", &c2); // line 4 printf("Done"); // …
93 c  scanf 


9
Yapıyı sıfır / null olarak başlat / sıfırla
struct x { char a[10]; char b[20]; int i; char *c; char *d[10]; }; Bu yapıyı dolduruyorum ve sonra değerleri kullanıyorum. Bir sonraki yinelemede, tüm alanları yeniden kullanmaya başlamadan önce 0veya nullönce sıfırlamak istiyorum . Bunu nasıl yapabilirim? Kullanabilir miyim memsetyoksa tüm üyelerin üzerinden geçip sonra bireysel olarak mı yapmalıyım?

3
UNIX engellemesiz G / Ç: O_NONBLOCK - FIONBIO
Ben BSD soket programlama bağlamında üzerinde çalıştırmak her örnekte ve tartışmada, o I tıkanmasızdır için bir dosya tanıtıcı set önerilen yoludur / Ç modu kullandığını görünüyor O_NONBLOCKbayrağı için fcntl(), örneğin, int flags = fcntl(fd, F_GETFL, 0); fcntl(fd, F_SETFL, flags | O_NONBLOCK); On yılı aşkın süredir UNIX'te ağ programlama yapıyorum ve …




10
C / C ++ 'da minimum çift değer
Bir C (++) programında en küçük negatif değeri temsil etmenin (örneğin negatif sonsuzluğu kullanmak için) standart ve / veya taşınabilir bir yolu var mı? Float.h içindeki DBL_MIN, en küçük pozitif sayıdır.
92 c++  c  math 

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.