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

7
"uint32_t" tanımlayıcı bulunamadı hatası
Linux C'den Windows için Visual C ++ koduna geçiş yapıyorum. Visual C ++ bilmiyor, #include <stdint.h>bu yüzden onu yorumladım. Daha sonra bu 'uint32_t': identifier not foundhataların çoğunu buldum . Nasıl çözülür?
97 c++  c  visual-c++ 

9
C'de iç içe geçmiş işlev
C'de iç içe geçmiş bir fonksiyona sahip olabilir miyiz? İç içe geçmiş işlevlerin kullanımı nedir? C de varlarsa, uygulamaları derleyiciden derleyiciye farklılık gösterir mi?
97 c  function  nested 


9
Main () yöntemi C'de nasıl çalışır?
Ana yöntemi yazmak için iki farklı imza olduğunu biliyorum - int main() { //Code } veya komut satırı argümanını işlemek için, bunu şöyle yazıyoruz: int main(int argc, char * argv[]) { //code } Gelen C++Bence bir yöntem aşırı, ama biliyorum Cnasıl derleyici bu iki farklı imzalar başedebilir mainfonksiyonu?
96 c++  c 



7
Fread / fwrite'ın boyutu almasının ve argüman olarak sayılmasının mantığı nedir?
Fread ve fwrite'ın neden üye başına bir boyut alıp, sadece bir tampon ve boyut almak yerine okunan / yazılan üye sayısını sayıp geri döndürdüğüne dair işte burada bir tartışma yaptık. Bunun için bulabileceğimiz tek kullanım, platform hizalamasıyla eşit olarak bölünemeyen ve dolayısıyla doldurulmuş bir dizi yapı okumak / yazmak istiyorsanız, …
96 c  libc 

17
İşlev işaretçilerinin amacı nedir?
İşlev işaretçilerinin faydasını görmekte güçlük çekiyorum. Bazı durumlarda faydalı olabileceğini tahmin ediyorum (sonuçta varlar), ancak bir işlev işaretçisi kullanmanın daha iyi veya kaçınılmaz olduğu bir durum düşünemiyorum. İşlev işaretçilerinin (C veya C ++ 'da) iyi kullanımına ilişkin bazı örnekler verebilir misiniz?
96 c++  c  function  pointers  c++-faq 


6
C tilde operatörü
ELF hashing algoritmasında kullanılan tilde operatörünü gördüm ve ne işe yaradığını merak ediyorum. (Kod Ebedi Şaşkın'dan alınmıştır .) unsigned elf_hash ( void *key, int len ) { unsigned char *p = key; unsigned h = 0, g; int i; for ( i = 0; i < len; i++ ) { …
96 c++  c  operators 

3
"Hafıza baskısı" nedir?
Sadece geldi bu blog yayınında karşısında “memleketinden belleği” bahseder: hafızayı kolayca ezebilen bir C ++ programı (yönetilen bir kod dünyasında doğduysanız muhtemelen hiç duymadığınız bir şey.) Ve aslında bunu hiç duymadım! Öyleyse, bu ne, bir hafıza ezmesi, hafızayı ezmek mi? Ne zaman meydana gelir?

9
Pthread_create () tarafından çağrılan işlev için birden çok argüman var mı?
Ayrı bir iş parçacığında çağırmak istediğim bir işleve birden çok argüman iletmem gerekiyor. Ya sahibim yapmanın tipik yolunun bir yapı tanımlamak, işleve buna bir işaretçi geçirmek ve argümanlar için ondan referans almak olduğunu okudum . Ancak, bunu çalıştıramıyorum: #include <stdio.h> #include <pthread.h> struct arg_struct { int arg1; int arg2; }; …
96 c  pthreads 

16
C ++ 'da dairesel kaydırma (döndürme) işlemleri için en iyi uygulamalar
Sol ve sağ kaydırma operatörleri (<< ve >>) C ++ 'da zaten mevcuttur. Ancak dairesel kaydırma veya döndürme işlemlerini nasıl yapacağımı bulamadım. "Sola Döndür" ve "Sağa Döndür" gibi işlemler nasıl yapılabilir? Burada iki kez sağa döndürülüyor Initial --> 1000 0011 0100 0010 şunlarla sonuçlanmalıdır: Final --> 1010 0000 1101 0000 …

5
Bir işaretçi adresi ve işaretçi değeri nasıl artırılır?
Farz edelim, int *p; int a = 100; p = &a; Aşağıdaki kod aslında ne yapacak ve nasıl yapacak? p++; ++p; ++*p; ++(*p); ++*(p); *p++; (*p)++; *(p)++; *++p; *(++p); Biliyorum, bu kodlama açısından biraz dağınık, ama böyle kodladığımızda aslında ne olacağını bilmek istiyorum. Not: adresi varsayalım Sağlar a=5120300, bu pointer …
96 c  pointers 

3
SRC, OBJ ve BIN alt dizinlerine sahip C projeleri için nasıl Makefile oluşturabilirim?
Birkaç ay önce, Makefileokul ödevleri için aşağıdaki jeneriği buldum : # ------------------------------------------------ # Generic Makefile # # Author: yanick.rochon@gmail.com # Date : 2010-11-05 # # Changelog : # 0.01 - first version # ------------------------------------------------ # project name (generate executable with this name) TARGET = projectname CC = gcc -std=c99 -c …
96 c  makefile 

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.