社区
嵌入开发(WinCE)
帖子详情
关于一个变量的定义
ddoeddoe
2009-04-17 02:16:01
Uint16 *souraddr;
souraddr = (Uint16 *)0x400000;
在程序里面有这样的变量定义
souraddr是16位地址的,可0x400000 是24位,可以赋值么?
...全文
61
4
打赏
收藏
关于一个变量的定义
Uint16 *souraddr; souraddr = (Uint16 *)0x400000; 在程序里面有这样的变量定义 souraddr是16位地址的,可0x400000 是24位,可以赋值么?
复制链接
扫一扫
分享
转发到动态
举报
AI
作业
写回复
配置赞助广告
用AI写文章
4 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
liaifeilove
2009-04-17
打赏
举报
回复
支持楼上的,补充一下
这种转换在编译器编译的时候就确定下来了.
你如果是16位系统,编译器将会将底16位强制转换,赋给souraddr ,也就是souraddr 指向0地址
paul_chao
2009-04-17
打赏
举报
回复
souraddr 是 指向 16 位地址 的指標 (Pointer), 其大小與機器有關.
在不同的機器上, pointer 的最大值會有所不同, 16-bits CPU, 其值為 0x0000 ~ 0xFFFF, 32-bits CPU, 其值為 0x00000000 ~ 0xFFFFFFFF.
所以本題應為與你的機器 (或曰 compiler) 相關, 不一定.
Paul, Chao @ Techware
ddoeddoe
2009-04-17
打赏
举报
回复
会有什么问题?
一般情况怎么赋值?
还有,我们经常看到: #define EXTINT (*((volatile unsigned char *) 0xE01FC140)) 把一个32位地址转成16位的?
91program
2009-04-17
打赏
举报
回复
可以
但有问题
java六大必须理解的问题 文档
- `==` 用来比较两个
变量
是否引用同
一个
对象。 - `.equals()` 方法则用来比较两个对象的实际内容是否相等。 **示例**: ```java String a = new String("foo"); String b = new String("foo"); System.out....
最全的C和C++语言笔试面试题汇总
#### 十四、如何引用
一个
已经
定义
过的全局
变量
? - 可以通过引用头文件或使用`extern`关键字。引用头文件时,如果
变量
名称拼写错误,编译时会报错;使用`extern`关键字时,即使拼写错误,编译时也不会报错,但链接...
Swift中文教程DOC版
5. 支持 playground:Swift 支持 playground,允许程序员实验一段 Swift 代码功能并立即看到结果,而无需麻烦的构建和运行
一个
应用。 Swift 的基本语法: 1. 打印“Hello, world”:在 Swift 中,只需一行代码就...
java学习笔记总结
继承允许
一个
类(子类)继承另
一个
类(父类)的属性和方法,实现了代码重用。多态则是指
一个
接口可以有多种不同的实现,增强了程序的灵活性。 在Java中,异常处理也是关键部分。通过try-catch-finally语句块,可以...
c++ primer第五版第6章答案
5. **内存分配差异**:当形参和实参不是指针类型时,形参会在栈上分配
一个
新的内存单元来存储实参的副本;若是指针,则实际上传递的是实参的地址。 ### 知识点二:函数调用常见错误 #### 示例 1. **返回类型错误**...
嵌入开发(WinCE)
19,523
社区成员
41,569
社区内容
发帖
与我相关
我的任务
嵌入开发(WinCE)
硬件/嵌入开发 嵌入开发(WinCE)
复制链接
扫一扫
分享
社区描述
硬件/嵌入开发 嵌入开发(WinCE)
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章