27 lines
786 B
C++
27 lines
786 B
C++
// C++ 中不同类型的变量之间赋值时,需要明确的使用强制类型转换
|
|
#include <iostream>
|
|
#include <cstdlib>
|
|
#include <cstring>
|
|
|
|
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;
|
|
} |