Pertanyaan yang diberi tag pointers

329
Pointer vs. nilai dalam parameter dan mengembalikan nilai

Di Go ada berbagai cara untuk mengembalikan structnilai atau potongannya. Untuk individu yang pernah saya lihat: type MyStruct struct { Val int } func myfunc() MyStruct { return MyStruct{Val: 1} } func myfunc() *MyStruct { return &MyStruct{} } func myfunc(s *MyStruct) { s.Val =...

324
Melewati array 2D ke fungsi C ++

Saya memiliki fungsi yang ingin saya ambil, sebagai parameter, array 2D ukuran variabel. Sejauh ini saya punya ini: void myFunction(double** myArray){ myArray[x][y] = 5; etc... } Dan saya telah mendeklarasikan array di tempat lain dalam kode saya: double anArray[10][10]; Namun, menelepon...

309
Apa perbedaan antara NULL, '\ 0' dan 0?

Di C, tampaknya ada perbedaan antara berbagai nilai nol - NULL, NULdan 0. Saya tahu bahwa karakter ASCII '0'mengevaluasi ke 48atau 0x30. The NULLpointer biasanya didefinisikan sebagai: #define NULL 0 Atau #define NULL (void *)0 Selain itu, ada NULkarakter '\0'yang tampaknya juga mengevaluasi...

298
Pointer di C: kapan harus menggunakan ampersand dan tanda bintang?

Saya baru memulai dengan pointer, dan saya sedikit bingung. Saya tahu &berarti alamat suatu variabel dan yang *dapat digunakan di depan variabel pointer untuk mendapatkan nilai objek yang ditunjuk oleh pointer. Tetapi berbagai hal bekerja secara berbeda ketika Anda bekerja dengan array, string...

264
Mengapa operator panah (->) di C ada?

Operator dot ( .) digunakan untuk mengakses anggota struct, sedangkan operator panah ( ->) di C digunakan untuk mengakses anggota struct yang dirujuk oleh pointer yang dimaksud. Pointer itu sendiri tidak memiliki anggota yang dapat diakses dengan operator titik (sebenarnya hanya angka yang...

257
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...

256
Pointer vs. Referensi

Apa yang akan menjadi praktik yang lebih baik ketika memberikan fungsi variabel asli untuk bekerja dengan: unsigned long x = 4; void func1(unsigned long& val) { val = 5; } func1(x); atau: void func2(unsigned long* val) { *val = 5; } func2(&x); TKI: Apakah ada alasan untuk memilih...

246
size_t vs uintptr_t

Standar C menjamin itu size_tadalah tipe yang dapat menampung indeks array apa pun. Ini berarti bahwa, secara logis, size_tharus dapat menahan semua jenis pointer. Saya telah membaca di beberapa situs yang saya temukan di Google bahwa ini legal dan / atau harus selalu berfungsi: void *v =...

243
Pointer ke anggota data kelas “:: *”

Saya menemukan potongan kode aneh ini yang mengkompilasi dengan baik: class Car { public: int speed; }; int main() { int Car::*pSpeed = &Car::speed; return 0; } Mengapa C ++ memiliki pointer ini ke anggota data non-statis kelas? Apa gunanya pointer aneh ini dalam kode