Pertanyaan yang diberi tag c

121
Apa gunanya malloc (0)?

Saya baru saja melihat kode ini : artist = (char *) malloc(0); ... dan saya bertanya-tanya mengapa orang melakukan

121
Mengapa alamat nol digunakan untuk penunjuk nol?

Dalam C (atau C ++ dalam hal ini), pointer menjadi spesial jika memiliki nilai nol: Saya disarankan untuk mengatur pointer ke nol setelah membebaskan memori mereka, karena itu berarti membebaskan pointer lagi tidak berbahaya; ketika saya memanggil malloc itu mengembalikan sebuah pointer dengan...

121
Penggabungan string makro C / C ++

#define STR1 "s" #define STR2 "1" #define STR3 STR1 ## STR2 Apakah mungkin untuk menggabungkan STR3 == "s1"? Anda dapat melakukan ini dengan meneruskan args ke fungsi Makro lainnya. Tetapi apakah ada cara

121
Menemukan duplikat dalam ruang O (n) dan O (1)

Input: Diberikan sebuah array dari n elemen yang berisi elemen dari 0 hingga n-1, dengan salah satu dari angka-angka ini muncul berapa kali. Sasaran: Untuk menemukan bilangan berulang ini dalam O (n) dan hanya menggunakan ruang memori yang konstan. Misalnya, misalkan n menjadi 7 dan array...

121
Apa fungsi bendera fpermissive?

Saya hanya ingin tahu apa yang dilakukan -fpermissiveflag pada kompiler g ++? Saya mendapatkan: error: mengambil alamat sementara [-fpermissive] yang bisa saya selesaikan dengan memberikan -fpermissivebendera ke kompiler. EDIT : Saya baru saja menemukan apa yang menyebabkan bagian kesalahan...

121
Bagaimana tepatnya cara kerja rekursi ekor?

Saya hampir mengerti cara kerja rekursi ekor dan perbedaan antara rekursi itu dan rekursi normal. Saya hanya tidak mengerti mengapa tidak memerlukan tumpukan untuk mengingat alamat pengirimnya. // tail recursion int fac_times (int n, int acc) { if (n == 0) return acc; else return fac_times(n -...

121
soket menghubungkan () vs mengikat ()

Keduanya connect()dan bind()panggilan sistem 'mengasosiasikan' deskriptor file soket ke sebuah alamat (biasanya kombinasi ip / port). Prototipe mereka seperti: - int connect(int sockfd, const struct sockaddr *addr, socklen_t addrlen); dan int bind(int sockfd, const struct sockaddr *addr,...