Pertanyaan yang diberi tag «c»

C adalah bahasa pemrograman tujuan umum yang digunakan untuk pemrograman sistem (OS dan tertanam), perpustakaan, game, dan lintas-platform. Tag ini harus digunakan dengan pertanyaan umum tentang bahasa C, sebagaimana didefinisikan dalam standar ISO 9899 (versi terbaru, 9899: 2018, kecuali ditentukan lain - juga tag permintaan versi khusus dengan c89, c99, c11, dll). C berbeda dari C ++ dan tidak boleh digabungkan dengan tag C ++ tanpa alasan yang rasional.


2
Mengapa alokasi awal C ++ jauh lebih besar daripada C?
Saat menggunakan kode yang sama, mengubah kompiler (dari kompilator C ke kompilator C ++) akan mengubah berapa banyak memori yang dialokasikan. Saya tidak begitu yakin mengapa ini terjadi dan ingin lebih memahaminya. Sejauh ini tanggapan terbaik yang saya dapatkan adalah "mungkin aliran I / O", yang tidak terlalu deskriptif dan …
138 c++  c  benchmarking 

7
Berapa ukuran bit panjang pada Windows 64-bit?
Belum lama ini, seseorang mengatakan kepada saya bahwa longitu bukan 64 bit pada mesin 64 bit dan saya harus selalu menggunakan int. Ini tidak masuk akal bagi saya. Saya telah melihat dokumen (seperti yang ada di situs resmi Apple) mengatakan bahwa longmemang 64 bit ketika mengkompilasi untuk CPU 64-bit. Saya …
138 c++  c  windows  64-bit  porting 

12
Platform apa yang memiliki sesuatu selain karakter 8-bit?
Sesekali, seseorang di SO menunjukkan bahwa char(alias 'byte') belum tentu 8 bit . Tampaknya 8-bit charhampir universal. Saya akan berpikir bahwa untuk platform arus utama, perlu memiliki 8-bit charuntuk memastikan kelangsungan hidupnya di pasar. Baik sekarang dan secara historis, platform apa yang menggunakan charyang bukan 8 bit, dan mengapa mereka …
138 c++  c  cross-platform 

6
Bagaimana cara memanggil C dari Swift?
Apakah ada cara untuk memanggil rutinitas C dari Swift? Banyak pustaka iOS / Apple hanya C dan saya masih ingin dapat memanggilnya. Misalnya, saya ingin dapat memanggil pustaka runtime objc dari swift. Secara khusus, bagaimana Anda menjembatani header iOS C?
138 c  swift 


9
Mengapa fungsi C tidak bisa diubah namanya?
Saya baru-baru ini melakukan wawancara dan satu pertanyaan yang diajukan adalah apa gunanya extern "C"dalam kode C ++. Saya menjawab bahwa itu untuk menggunakan fungsi C dalam kode C ++ karena C tidak menggunakan nama-mangling. Saya ditanya mengapa C tidak menggunakan nama-mangling dan sejujurnya saya tidak bisa menjawab. Saya memahami …
137 c++  c  name-mangling  extern-c 

9
Bisakah fungsi rekursif sejajar?
inline int factorial(int n) { if(!n) return 1; else return n*factorial(n-1); } Saat saya membaca ini , menemukan bahwa kode di atas akan mengarah pada "kompilasi tak terbatas" jika tidak ditangani oleh kompilator dengan benar. Bagaimana kompilator memutuskan apakah akan menyebariskan suatu fungsi atau tidak?




4
“Int main (vooid)”? Bagaimana cara kerjanya?
Saya baru-baru mengetikkan program uji C kecil dan, dalam proses, saya membuat kesalahan ejaan dalam fungsi utama dengan sengaja menggunakan vooidbukan void. Namun itu masih berhasil. Mengurangi itu menjadi versi lengkap terkecil, saya berakhir dengan: int main (vooid) { return 42; } Ini memang compile ( gcc -Wall -o myprog …
135 c  syntax  main 

9
definisi struct referensial diri?
Saya sudah lama tidak menulis C, jadi saya tidak yakin bagaimana saya harus melakukan hal-hal rekursif semacam ini ... Saya ingin setiap sel mengandung sel lain, tetapi saya mendapatkan kesalahan di sepanjang baris "bidang 'anak' memiliki tipe tidak lengkap". Ada apa? typedef struct Cell { int isParent; Cell child; } …
134 c  recursion  struct  typedef 

30
Apa trik pemrograman C favorit Anda? [Tutup]
Seperti yang terjadi saat ini, pertanyaan ini tidak cocok untuk format Tanya Jawab kami. Kami mengharapkan jawaban didukung oleh fakta, referensi, atau keahlian, tetapi pertanyaan ini kemungkinan akan mengundang perdebatan, argumen, jajak pendapat, atau diskusi yang diperpanjang. Jika Anda merasa pertanyaan ini bisa diperbaiki dan mungkin dibuka kembali, kunjungi pusat …
134 c 


Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.