1. 0L 代表什么,就是0后面还有个L,不解2.
今天看到指针这节,对这个不是太懂*(int*)这种类型代表的是什么,大家可以解释下,最好有例子说明下,谢谢
今天看到指针这节,对这个不是太懂*(int*)这种类型代表的是什么,大家可以解释下,最好有例子说明下,谢谢
解决方案 »
- VC6写的MFC程序,无法长时间运行,为何?
- WaitForMultipleObjects的第一个参数可以是比数组小的数吗?
- 求助,多个wav音频文件组合成一个wav音频文件的算法!
- listctrl 排序的问题 排序不正确 求高手修改!
- recordset中的putcollect()的问题?
- 对话框DOMODAL问题。
- 鼠标移动到EDIT控件上的时候,怎么出现一些提示信息,内容由变量来传递
- 我要实现带树型功能的列表视图显示,怎么办?
- vs2012出现断点停止地方不对的问题
- VC++ 消息回应函数只执行一部分
- 请问大家都是如何实现文件传输时的流量控制的阿??
- 怎么编程实现删除指定站的Cookie?
2、你些的不是很清楚如果是 *(int*)i 表示把i类型转换为指向int的指针,然后前面的* 表示
在取出指针中的内容。
---------------------------------------
代表0是LONG类型的数。第二题没见过,不太清楚。
这样的常量在int和long长度不一样系统里面与long变量做计算时可能会造成值域的问题,所以在声明常量时如果想把这个常量当作long而不是int时,可以用常量加L的声明方式,比如:
#define X 12L
或者
long function1(void)
{
...
...
...
return 0L;
}*(int *)其实这种写法并不被推荐,容易造成人的困惑。
来分解一下看看;
char szChar[]="Hello";
char * pChar = szChar;
int * pInt = (int *)pChar;
int i = *pInt;
所以i = *(int)pChar;但实际上,指针指向的内存应该存什么就是什么,除了地址运算,在基本类型之间作指针的强制类型转换意义不大。