Adakah fungsi spprintf diperlukan untuk RETURN_STRINGL dalam sambungan PHP?
PHPz
PHPz 2017-06-05 11:07:02
0
1
886

RT, jika saya tetapkan nilai secara langsung kepada rentetan untuk dikeluarkan menggunakan char* dan terus mengeraskan panjang rentetan ke dalam RETURN_STRINGL, hasilnya akan dikeluarkan semasa pelaksanaan, tetapi kemudian "kesalahan pembahagian, teras telah dibuang" akan dilaporkan . Tetapi jika anda menggunakan fungsi spprintf yang disyorkan secara rasmi untuk menetapkan nilai dan mendapatkan panjang, tiada ralat akan dilaporkan.

PS: Dalam kod dalam gambar, jika parameter kedua RETURN_STRINGL ditukar kepada 2, ralat yang sama akan dilaporkan saya menukarnya kepada 3 kerana saya fikir PHP akan memasukkan 0 pada penghujungnya, tetapi selepas mencubanya beberapa kali, saya mendapati bahawa ia tidak sepatutnya menjadi masalah di sini

PHPz
PHPz

学习是最好的投资!

membalas semua(1)
習慣沉默

Rentetan yang dikembalikan oleh RETURN_STRINGL mestilah memori yang diperuntukkan oleh pengurusan memori PHP Ia akan dikeluarkan oleh PHP sendiri selepas spprintf adalah pengurusan memori PHP yang digunakan. Dalam kes ini, anda boleh menetapkan parameter ketiga kepada 1, yang bermaksud bahawa PHP sendiri memperuntukkan memori yang sepadan untuk menyalin rentetan.

Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan