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.

6
Const sebelum atau const sesudah?
Untuk memulai, Anda mungkin tahu bahwa constdapat digunakan untuk membuat data objek atau pointer tidak dapat dimodifikasi atau keduanya. const Object* obj; // can't change data Object* const obj; // can't change pointer const Object* const obj; // can't change data or pointer Namun Anda juga dapat menggunakan sintaks: Object …
145 c++  c  syntax  const 



6
Apa keuntungan dari __builtin_expect GCC dalam pernyataan if else?
Saya menemukan #definedi mana mereka menggunakan __builtin_expect. Dokumentasi mengatakan: Fungsi bawaan: long __builtin_expect (long exp, long c) Anda dapat menggunakan __builtin_expectuntuk memberikan informasi prediksi cabang kepada kompiler. Secara umum, Anda harus memilih untuk menggunakan umpan balik profil aktual untuk ini ( -fprofile-arcs), karena pemrogram terkenal buruk dalam memprediksi bagaimana kinerja …
144 c  linux  gcc  built-in 


9
Apa perbedaan antara sigaction dan sinyal?
Saya akan menambahkan penangan sinyal tambahan ke aplikasi yang kami miliki di sini dan saya perhatikan bahwa penulis telah sigaction()mengatur penangan sinyal lainnya. Saya akan menggunakan signal(). Untuk mengikuti konvensi saya harus menggunakan sigaction()tetapi jika saya menulis dari awal, mana yang harus saya pilih?
143 c  signals  posix 

2
Signifikansi flag -pthread saat kompilasi
Dalam berbagai proyek multi-threaded C dan C ++ saya telah melihat -pthreadbendera diterapkan untuk tahap kompilasi dan menghubungkan sementara yang lain tidak menggunakannya sama sekali dan hanya lolos -lpthreadke tahap menghubungkan. Apakah ada bahaya tidak mengkompilasi dan menghubungkan dengan -pthreadbendera - yaitu apa yang -pthreadsebenarnya dilakukan? Saya terutama tertarik pada …
143 c++  c  linux  pthreads 

16
Klarifikasi pointer ke pointer
Saya mengikuti tutorial ini tentang bagaimana cara kerja pointer ke pointer . Izinkan saya mengutip bagian yang relevan: int i = 5, j = 6, k = 7; int *ip1 = &i, *ip2 = &j; Sekarang kita bisa atur int **ipp = &ip1; dan ippmenunjuk ke ip1poin mana i. *ippadalah …
142 c  pointers 

6
_DEBUG vs NDEBUG
Definisi preprocessor mana yang harus digunakan untuk menentukan bagian debug kode? Gunakan #ifdef _DEBUGatau #ifndef NDEBUGatau adakah cara yang lebih baik untuk melakukannya, misalnya #define MY_DEBUG? Saya pikir _DEBUGVisual Studio spesifik, apakah standar NDEBUG?
142 c++  c  debugging 




30
Fitur tersembunyi dari C
Terkunci . Pertanyaan ini dan jawabannya dikunci karena pertanyaannya di luar topik tetapi memiliki signifikansi historis. Saat ini tidak menerima jawaban atau interaksi baru. Saya tahu ada standar di balik semua implementasi kompiler C, jadi seharusnya tidak ada fitur tersembunyi. Meskipun demikian, saya yakin semua pengembang C memiliki trik tersembunyi …
141 c  hidden-features 

21
Ubah objektif-c typedef ke string yang setara
Dengan asumsi bahwa saya memiliki typedef yang dinyatakan dalam file .h saya seperti: typedef enum { JSON, XML, Atom, RSS } FormatType; Saya ingin membangun fungsi yang mengubah nilai numerik dari typedef menjadi string. Misalnya, jika pesan [self toString:JSON]itu dikirim; itu akan mengembalikan 'JSON'. Fungsi akan terlihat seperti ini: -(NSString …
141 c  objective-c  enums  typedef 

16
Apa tujuan dari blok 'jika (0)' di blok if-else?
Pertanyaan saya adalah tentang baris yang saya sebutkan dalam subjek dan yang dapat saya lihat di banyak tempat di dalam kode produksi. Kode keseluruhan terlihat seperti ini: if (0) { // Empty braces } else if (some_fn_call()) { // actual code } else if (some_other_fn_call()) { // another actual code …
141 c  if-statement 

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.