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.


10
Bagaimana mencegah SIGPIPE (atau menanganinya dengan benar)
Saya memiliki program server kecil yang menerima koneksi pada TCP atau soket UNIX lokal, membaca perintah sederhana dan, tergantung pada perintahnya, mengirimkan balasan. Masalahnya adalah bahwa klien mungkin tidak tertarik pada jawaban kadang-kadang dan keluar lebih awal, jadi menulis ke soket itu akan menyebabkan SIGPIPE dan membuat server saya crash. …
261 c  io  signals  broken-pipe  sigpipe 

12
Bagaimana cara mengubah string menjadi integer di C?
Saya mencoba mencari tahu apakah ada cara alternatif untuk mengubah string menjadi integer di C. Saya secara teratur pola berikut ini dalam kode saya. char s[] = "45"; int num = atoi(s); Jadi, apakah ada cara yang lebih baik atau cara lain?
260 c  string  atoi 

12
Arrow operator (->) penggunaan dalam C
Saya membaca buku berjudul "Teach Yourself C in 21 Days" (Saya sudah belajar Java dan C # jadi saya bergerak dengan kecepatan yang jauh lebih cepat). Saya membaca bab tentang petunjuk dan operator-> (panah) muncul tanpa penjelasan. Saya pikir itu digunakan untuk memanggil anggota dan fungsi (seperti yang setara dengan …
257 c  pointers  syntax 

3
Mengapa malloc + memset lebih lambat dari calloc?
Diketahui bahwa callocini berbeda dari mallocyang menginisialisasi memori yang dialokasikan. Dengan calloc, memori diatur ke nol. Dengan malloc, memori tidak terhapus. Jadi dalam pekerjaan sehari-hari, saya anggap callocsebagai malloc+ memset. Kebetulan, untuk bersenang-senang, saya menulis kode berikut untuk benchmark. Hasilnya membingungkan. Kode 1: #include<stdio.h> #include<stdlib.h> #define BLOCK_SIZE 1024*1024*256 int main() …
256 c  malloc 

10
Menggunakan GCC untuk menghasilkan perakitan yang dapat dibaca?
Saya bertanya-tanya bagaimana cara menggunakan GCC pada file sumber C saya untuk membuang versi mnemonik dari kode mesin sehingga saya bisa melihat kode apa yang sedang dikompilasi. Anda dapat melakukan ini dengan Java tetapi saya belum dapat menemukan cara dengan GCC. Saya mencoba untuk menulis ulang metode C dalam perakitan …
256 c  gcc  assembly 

15
Tujuan Serikat di C dan C ++
Saya telah menggunakan serikat pekerja sebelumnya dengan nyaman; hari ini saya terkejut ketika saya membaca posting ini dan mengetahui kode ini union ARGB { uint32_t colour; struct componentsTag { uint8_t b; uint8_t g; uint8_t r; uint8_t a; } components; } pixel; pixel.colour = 0xff040201; // ARGB::colour is the active member …
254 c++  c  unions  type-punning 

11
Mengapa Anda harus menautkan perpustakaan matematika di C?
Jika saya memasukkan <stdlib.h>atau <stdio.h>dalam program C saya tidak harus menautkan ini saat kompilasi tetapi saya harus menautkannya <math.h>, menggunakan -lmdengan gcc, misalnya: gcc test.c -o test -lm Apa alasannya? Mengapa saya harus secara eksplisit menghubungkan perpustakaan matematika tetapi tidak dengan perpustakaan lain?
254 c  compilation  math.h 



6
Mengapa 0 <-0x80000000?
Saya memiliki program sederhana di bawah ini: #include &lt;stdio.h&gt; #define INT32_MIN (-0x80000000) int main(void) { long long bal = 0; if(bal &lt; INT32_MIN ) { printf("Failed!!!"); } else { printf("Success!!!"); } return 0; } Kondisinya if(bal &lt; INT32_MIN )selalu benar. Bagaimana itu mungkin? Ini berfungsi dengan baik jika saya mengubah …

10
Apa yang dimaksud dengan {0} saat menginisialisasi objek?
Kapan {0}digunakan untuk menginisialisasi objek, apa artinya? Saya tidak dapat menemukan referensi ke {0}mana pun, dan karena kurung kurawal pencarian Google tidak membantu. Kode contoh: SHELLEXECUTEINFO sexi = {0}; // what does this do? sexi.cbSize = sizeof(SHELLEXECUTEINFO); sexi.hwnd = NULL; sexi.fMask = SEE_MASK_NOCLOSEPROCESS; sexi.lpFile = lpFile.c_str(); sexi.lpParameters = args; sexi.nShow …
252 c++  c 



22
Bagaimana C menghitung sin () dan fungsi matematika lainnya?
Saya telah meneliti melalui .NET disassemblies dan kode sumber GCC, tetapi tampaknya tidak dapat menemukan di mana saja implementasi aktual sin()dan fungsi matematika lainnya ... mereka sepertinya selalu merujuk pada hal lain. Adakah yang bisa membantu saya menemukannya? Saya merasa sepertinya tidak mungkin SEMUA perangkat keras yang akan dijalankan oleh …
248 c  math  trigonometry 

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.