Dalam C , persoalan timbul sama ada mungkin untuk mengisytiharkan pembolehubah jenis yang berbeza dalam badan permulaan sesuatu untuk gelung. Pertimbangkan kod berikut:
for(int i=0, j=0 ...
Ini memulakan dua pembolehubah integer (i dan j). Adakah mungkin untuk mentakrifkan int dan aksara dalam badan permulaan ini?
Secara teknikal, terdapat penyelesaian, walaupun tidak konvensional:
for(struct { int a; char b; } s = { 0, 'a' } ; s.a < 5 ; ++s.a) { std::cout << s.a << " " << s.b << std::endl; }
Di sini, kami mentakrifkan struct yang mengandungi kedua-dua int dan char. Gelung for memulakan tika struct ini, dan kemudian menambah ahli int dalam badan gelung.
Walaupun penyelesaian ini memenuhi keperluan teknikal, perlu diingat bahawa corak ini biasanya tidak digalakkan kerana potensinya untuk kekeliruan. dan kekurangan kejelasan berbanding menggunakan pembolehubah berasingan.
Atas ialah kandungan terperinci Bolehkah Anda Mengisytiharkan Pembolehubah Pelbagai Jenis dalam C Untuk Permulaan Gelung?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!