指针可以加上或减去一个整数。指针的这种运算的意义和通常的数值的加减运算的意义是不一样的。指针加1的结果等于原来的地址值加上指向的对象占用的总字节数。指针的相减将得到一个整数,仅当两个指针指向同一个数组时这种运算才有意义,这将得到两个元素的间隔。
例1:
char a[20];
int *ptr=(int *)a; //强制类型转换并不会改变 a 的类型
ptr++;
在上例中...
分类:
其他好文 时间:
2015-04-27 10:00:32
阅读次数:
92
/************************************************************************* > File Name: hex2add.c > Author: cat > Mail: luojinfu1988@163.com *******.....
分类:
其他好文 时间:
2015-04-23 19:25:12
阅读次数:
159
赋值中的类型转换当赋值运算符两边的运算对象类型不同时,将要发生类型转换, 转换的规则是:把赋值运算符右侧表达式的类型转换为左侧变量的类型。具体的转换如下:(1)浮点型与整型● 将浮点数(单双精度)转换为整数时,将舍弃浮点数的小数部分(是直接舍弃,编译器不会自动四舍五入), 只保留整数部分。将整型值赋...
分类:
其他好文 时间:
2015-04-23 13:02:06
阅读次数:
166
措好辞表达 1.抽象父类的抽象方法被子类实现,但是子类又实现了自己的方法,将子类(指针)强制转换成父类(指针)之后,关于这些不同类型的方法的使用 父类中定义的方法可以正常使用 但是子类自己定义的方法(不是父类中规定的)好像不能通过转换后的指针来调用了 2.面向对象的各种机制 父...
三、类可以理解成一种特殊的数据结构 我们知道数据类型可以进行强制类型转换,类既然可以理解成一种数据类型,那么它也应该可以进行类型转换。比如下面代码为一个按钮(Button1)的单击事件procedure TForm1.Button1Click(Sender: TObject);var ACa...
又是程序员面试宝典,又是被虐的死去活来。这次是dynamic_cast。得,查资料加总结吧C++有四种强制类型转换,分别是static_cast, dynamic_cast, reinterpret_cast, const_cast ,这四种转换网上一大堆讲解比如 Jerry19880126的htt...
分类:
编程语言 时间:
2015-04-17 20:08:29
阅读次数:
147
强制类型转换时一种技术,通过它能够使编译器把一种类型的变量当做另一种类型。 由于Pascal有定义新类型的功能,因此编译器在调用一个函数时候对形参和实参类型匹配的检查是非常严格的。因此为了能够通过编译器检查,经常需要把一个变量的类型转换为另一个变量的类型。例如:假定要把一个字符类型的值赋给一个...
#include
using namespace std;
#include//标准c++不带.h,说明来自c语言
//static_cast,const_cast,reinterpret_cast,dynamic_cast强制类型转换
//const_cast用于临时去掉const、volatile限制
int main()
{
//int n=3.21;
int m=static_cast...
分类:
编程语言 时间:
2015-04-16 12:31:50
阅读次数:
158
关于强制类型转换的问题,很多书都讨论过,写的最详细的是C++ 之父的《C++ 的设计和演化》。最好的解决方法就是不要使用C风格的强制类型转换,而是使用标准C++的类型转换符:static_cast, dynamic_cast。标准C++中有四个类型转换符:static_cast、dynamic_ca...
分类:
其他好文 时间:
2015-04-15 18:55:00
阅读次数:
126
使用标准C++的类型转换符:static_cast、dynamic_cast、reinterpret_cast和const_cast。1、static_cast 用法:static_cast (expression) 该运算符把expression转换为type-id类型,但没有运行时类型检查来.....
分类:
编程语言 时间:
2015-04-15 14:48:08
阅读次数:
149