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.


1
Apakah nilai char diatur ke CHAR_MAX dijamin untuk membungkus CHAR_MIN?
Kode saya: #include <stdio.h> #include <limits.h> int main() { char c = CHAR_MAX; c += 1; printf("CHAR_MIN=%d CHAR_MAX=%d c=%d (%c)\n", CHAR_MIN, CHAR_MAX, c, c); } Keluaran: CHAR_MIN=-128 CHAR_MAX=127 c=-128 () Kita melihat bahwa ketika kita menambah charset variabel ke CHAR_MAX, itu membungkus sekitar CHAR_MIN. Apakah perilaku ini dijamin? Atau apakah …

3
Pemotongan yang tidak konsisten dari ekspresi integer bitfield yang tidak ditandatangani antara C ++ dan C dalam kompiler yang berbeda
Edit 2 : Saya sedang men-debug kegagalan pengujian aneh ketika fungsi yang sebelumnya berada di file sumber C ++ tetapi pindah ke file C kata demi kata, mulai mengembalikan hasil yang salah. MVE di bawah ini memungkinkan untuk mereproduksi masalah dengan GCC. Namun, ketika saya, dengan hati-hati, mengkompilasi contoh dengan …


1
C11 Atomic Acquire / Release dan kurangnya x86_64 koherensi load / store?
Saya berjuang dengan Bagian 5.1.2.4 dari Standar C11, khususnya semantik Release / Acquire. Saya perhatikan bahwa https://preshing.com/20120913/acquire-and-release-semantics/ (antara lain) menyatakan bahwa: ... Rilis semantik mencegah penyusunan ulang memori dari rilis-rilis dengan operasi baca atau tulis apa pun yang mendahuluinya dalam urutan program. Jadi, untuk yang berikut ini: typedef struct test_struct …

4
Mengapa mengembalikan NULL dari main ()?
Saya terkadang melihat coders yang digunakan NULLsebagai nilai balik main()dalam program C dan C ++, misalnya sesuatu seperti itu: #include <stdio.h> int main() { printf("HelloWorld!"); return NULL; } Ketika saya mengkompilasi kode `ini dengan gcc saya mendapat peringatan: peringatan: return membuat integer dari pointer tanpa gips [-Wint-conversion] yang wajar karena …
10 c++  c  null  return  return-value 

2
Apakah prefetcher L2 HW benar-benar bermanfaat?
Saya berada di Whiskey Lake i7-8565U dan menganalisis penghitung perf dan waktu untuk menyalin data 512 KiB (dua kali lebih banyak dari ukuran cache L2) dan menghadapi beberapa kesalahpahaman mengenai pekerjaan prefetcher L2 HW. Dalam Intel Manual Vol.4 MSR terdapat MSR 0x1A4bit 0 of adalah untuk controlloing L2 HW prefetcher …


5
Tautan dinamis - Linux Vs. Windows
Di Windows, ketika saya mengkompilasi kode C / C ++ dalam proyek DLL di MSVC saya mendapatkan 2 file: MyDll.dll MyDll.lib di mana sejauh yang saya mengerti MyDll.libmengandung beberapa jenis tabel pointer yang menunjukkan lokasi fungsi di dll. Ketika menggunakan dll ini, katakanlah dalam file exe, MyDll.libtertanam ke dalam file …




3
Apa spesifikasi dari string dalam C?
Saya seharusnya menjawab pertanyaan pekerjaan rumah untuk salah satu kelas saya. Secara khusus, saya seharusnya mengatakan apakah array dalam C dianggap string atau tidak. Berdasarkan artikel ini ( https://www.geeksforgeeks.org/strings-in-c-2/ ) Saya tahu bahwa string adalah array karakter dengan terminator nol di akhir. Hangup utama saya adalah bagian dari pertanyaan yang …

1
Parameter utama C
Saya menulis kode yang harus menampilkan parameter utama, tetapi ketika saya mengkompilasinya dan mengetikkan "*" program menunjukkan struktur file saya. Perintah dalam cmd terlihat seperti ini:program.exe 1 2 3 * #include <stdio.h> #include <stdlib.h> int main(int argc, char const* argv[]) { for (int i=0; i<argc; i++) printf("%s\n", argv[i]); return 0; …

4
Menghitung root yang bersarang di C
Saya diminta untuk menghitung ekspresi root bersarang berikut ini hanya menggunakan rekursi . Saya menulis kode di bawah ini yang berfungsi, tetapi mereka memungkinkan kami untuk menggunakan hanya satu fungsi dan 1 input nuntuk tujuan dan bukan 2 seperti yang saya gunakan. Dapatkah seseorang membantu saya mengubah kode ini menjadi …
9 c  recursion  sqrt 

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.