// C++ 中不同类型的变量之间赋值时,需要明确的使用强制类型转换 #include #include #include using namespace std; typedef enum COLOR { GREEN = 1, RED = 5, BLUE // 6 } color; int main() { int a = 129; char b = a; // 隐式类型转换(大类型转换为小类型)(不安全) cout << "b = " << (int)b << endl; // -127 // C++ 中必须使用强制类型转换,明确数据类型 char *p = (char *)malloc(32); // malloc 返回值是 void *,需要强制类型转换 // char *p = malloc(32); // malloc 返回值是 void *,需要强制类型转换 strcpy(p, "hello world"); cout << "p = " << p << endl; // p 为指针,输出的是地址的内容 return 0; }