Rumah >pembangunan bahagian belakang >C++ >Peraturan penukaran jenis parameter fungsi C++

Peraturan penukaran jenis parameter fungsi C++

王林
王林asal
2024-04-13 21:24:02646semak imbas

Peraturan penukaran jenis parameter fungsi C++ termasuk: penukaran jenis yang tidak ditandatangani kepada jenis yang ditandatangani, penukaran jenis ketepatan rendah kepada jenis ketepatan tinggi, penukaran antara jenis titik terapung dan penukaran antara jenis penunjuk yang serasi. Kes praktikal: Anda boleh menghantar integer yang tidak ditandatangani, integer ketepatan rendah dan jenis titik terapung sebagai parameter, dan pengkompil secara tersirat akan menukarnya kepada jenis yang sepadan.

C++ 函数参数类型的转换规则

C++ peraturan penukaran jenis parameter fungsi

Dalam C++, fungsi boleh diisytiharkan untuk menerima parameter jenis tertentu. Jika hujah yang dihantar kepada fungsi adalah daripada jenis yang berbeza daripada jenis yang dinyatakan dalam pengisytiharan fungsi, pengkompil cuba menukar hujah kepada jenis yang betul. Penukaran ini dipanggil penukaran jenis tersirat.

Peraturan penukaran

Peraturan penukaran jenis tersirat dalam C++ adalah seperti berikut:

  • Penukaran jenis yang tidak ditandatangani kepada jenis yang ditandatangani: Jenis integer yang tidak ditandatangani boleh ditukar kepada jenis integer yang ditandatangani. Contohnya, unsigned int boleh ditukar kepada int. unsigned int 可以转换为 int
  • 精度低的类型转换为精度高的类型:精度低的整数类型可以转换为精度高的整数类型。例如,short 可以转换为 int
  • 浮点类型之间的转换:较小精度的浮点类型可以转换为较大精度的浮点类型。例如,float 可以转换为 double
  • Tukar jenis ketepatan rendah kepada jenis ketepatan tinggi: Jenis integer ketepatan rendah boleh ditukar kepada jenis integer ketepatan tinggi. Contohnya, short boleh ditukar kepada int.
Penukaran antara jenis titik terapung:

Jenis titik terapung ketepatan yang lebih kecil boleh ditukar kepada jenis titik terapung ketepatan yang lebih besar. Contohnya, float boleh ditukar kepada double.

Penukaran antara jenis penunjuk:

Jenis penunjuk yang serasi boleh ditukar antara satu sama lain. Sebagai contoh, penunjuk kepada kelas terbitan boleh ditukar kepada penunjuk kepada kelas asas.

🎜Kes praktikal🎜🎜🎜Kod berikut menunjukkan penggunaan penukaran jenis parameter fungsi C++: 🎜
#include <iostream>

void printInteger(int n) {
  std::cout << "Integer: " << n << std::endl;
}

int main() {
  // 传递无符号整数作为参数
  unsigned int ui = 123;
  printInteger(ui);  // 隐式转换为有符号整数

  // 传递精度低的整数作为参数
  short s = 456;
  printInteger(s);  // 隐式转换为有符号整数

  // 传递浮点类型作为参数
  float f = 1.23f;
  printInteger((int)f);  // 显式转换为整数

  return 0;
}
🎜Keluaran program: 🎜
Integer: 123
Integer: 456
Integer: 1

Atas ialah kandungan terperinci Peraturan penukaran jenis parameter fungsi C++. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn