Pertanyaan yang diberi tag «c99»

Tag ini untuk pertanyaan tentang Standar Internasional ISO 9899: 1999, alias "C99", dengan corrigenda teknis, dan untuk pertanyaan tentang kode yang ditulis dalam C99 (sebagai lawan dari K&R C, C89 atau revisi C Standar yang lebih baru seperti revisi C11 2011) .


2
Penggunaan realistis kata kunci 'pembatasan' C99?
Saya sedang menelusuri beberapa dokumentasi dan pertanyaan / jawaban dan melihatnya disebutkan. Saya membaca deskripsi singkat, menyatakan bahwa itu pada dasarnya adalah janji dari programmer bahwa pointer tidak akan digunakan untuk menunjuk ke tempat lain. Adakah yang bisa menawarkan beberapa kasus realistis di mana nilainya benar-benar menggunakan ini?
183 c  gcc  c99  restrict-qualifier 

10
Alternatif standar untuk trik ## __ VA_ARGS__ GCC?
Ada masalah terkenal dengan arg kosong untuk makro variadic di C99. contoh: #define FOO(...) printf(__VA_ARGS__) #define BAR(fmt, ...) printf(fmt, __VA_ARGS__) FOO("this works fine"); BAR("this breaks!"); Penggunaan di BAR()atas memang salah menurut standar C99, karena akan diperluas ke: printf("this breaks!",); Perhatikan tanda koma - tidak bisa digunakan. Beberapa kompiler (mis: Visual …


4
konversi bool to int
Seberapa portabel konversi ini. Bisakah saya yakin bahwa kedua pernyataan itu lulus? int x = 4<5; assert(x==1); x = 4>5; assert(x==0); Jangan tanya kenapa. Saya tahu itu jelek. Terima kasih.
131 c++  c  c99 

3
Bagaimana program di bawah ini menghasilkan `C89` saat dikompilasi dalam mode C89 dan` C99` saat dikompilasi dalam mode C99?
Saya telah menemukan program C ini dari web: #include <stdio.h> int main(){ printf("C%d\n",(int)(90-(-4.5//**/ -4.5))); return 0; } Hal yang menarik dengan program ini adalah bahwa ketika dikompilasi dan dijalankan dalam mode C89, ia mencetak C89dan ketika dikompilasi dan dijalankan dalam mode C99, ia mencetak C99. Tetapi saya tidak dapat menemukan …
128 c  printf  comments  c99  c89 

5
Apa perbedaan antara C, C99, ANSI C dan GNU C?
Saya sudah mulai berlatih pemrograman dengan codechef dan bingung dengan perbedaan antara C dan C99. Apa arti C di sini? Apakah C89? Periksa bahasa di bagian bawah kiriman ini . Ini berisi C dan C99. Saya menemukan di internet sesuatu yang disebut GNU C. Apakah ada C yang berbeda untuk …
122 c  gcc  c99  c89  ansi-c 



7
C99 stdint.h header dan MS Visual Studio
Yang mengejutkan saya, saya baru saja menemukan bahwa C99 stdint.h hilang dari MS Visual Studio 2003 ke atas. Saya yakin mereka punya alasannya sendiri, tetapi adakah yang tahu di mana saya dapat mengunduh salinannya? Tanpa tajuk ini saya tidak memiliki definisi untuk jenis yang berguna seperti uint32_t, dll.
113 c++  c  visual-studio  c99 

8
Penentu lebar printf untuk menjaga ketepatan nilai floating-point
Apakah ada printfpenentu lebar yang dapat diterapkan ke penentu titik mengambang yang secara otomatis akan memformat keluaran ke jumlah digit signifikan yang diperlukan sehingga saat memindai string kembali, nilai titik mengambang asli diperoleh? Misalnya, saya mencetak floatdengan presisi 2tempat desimal: float foobar = 0.9375; printf("%.2f", foobar); // prints out 0.94 …


3
Apakah "sebaris" tanpa "statis" atau "eksternal" pernah berguna di C99?
Saat saya mencoba membuat kode ini inline void f() {} int main() { f(); } menggunakan baris perintah gcc -std=c99 -o a a.c Saya mendapatkan kesalahan penaut (referensi tidak ditentukan ke f). Kesalahan hilang jika saya menggunakan static inlineatau extern inlinebukan hanya inline, atau jika saya mengkompilasi dengan -O(jadi fungsinya …
96 c  inline  c99 


3
Apakah ada mesin, di mana sizeof (char)! = 1, atau setidaknya CHAR_BIT> 8?
На этот вопрос есть ответы на Stack Overflow на русском : Кто-нибудь встречал в своей практике sizeof (char)! = 1? Apakah ada mesin (atau kompiler), di mana sizeof(char) != 1? Apakah standar C99 mengatakan bahwa sizeof(char)pada penerapan kepatuhan standar HARUS tepat 1? Jika ya, tolong beri saya nomor bagian dan …
93 c  char  standards  sizeof  c99 

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.