社区
C语言
帖子详情
那位大虾解释一下远指针?
woshialber
2004-05-03 11:13:12
最近在学习socket的编程中查看一些结构体(如hostent)时发现这种定义
char FAR*,char FAR FAR**的定义?
这是啥意思啊?这和char*,char**有什么不一样吗?
...全文
37
14
打赏
收藏
那位大虾解释一下远指针?
最近在学习socket的编程中查看一些结构体(如hostent)时发现这种定义 char FAR*,char FAR FAR**的定义? 这是啥意思啊?这和char*,char**有什么不一样吗?
复制链接
扫一扫
分享
转发到动态
举报
AI
作业
写回复
配置赞助广告
用AI写文章
14 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
cngdzhang
2004-05-03
打赏
举报
回复
在tc中
有模式tiny small
代码段和数据段都是小于64K的,所以用near指针就可以访问
但是,一旦数据或代码超过了64K(比如,我的程序特别长,或我定义了好多数组,总大小超过了64k,那么这些数据或代码就不可能在同一个段(64K)里面了,要访问这些数据就必须用远指针了
hostent这个结构体
我不太清楚:(
cngdzhang
2004-05-03
打赏
举报
回复
这个段指的是64k的段
在tc中
#include <stdio.h>
void main()
{
char far *pfc;
char *pc;
printf("%d %d",sizeof(pfc),sizeof(pc));
}
程序的输出结果是
4 2
由此可知远指针是32位的,近指针是16位的
16位的寻址范围是2^16=64K
为了能访问别的段必须由32位的指针进行访问,
这32位包括了16位段地址,16位偏移地址
woshialber
2004-05-03
打赏
举报
回复
to cngdzhang :
可否说的详细点?
恩,比如说:什么情况下要用远指针?为什么hostent这个结构体要用到char FAR*?
cngdzhang
2004-05-03
打赏
举报
回复
远指针far和近指针near是相对的
如果不特别说明far,那么默认的是近指针
远指针指的是不在同一个段中的指针
近指针指的是在同一个段的指针
dongni386
2004-05-03
打赏
举报
回复
<<C语言高级实用教程>>(清华大学出版社 1992)上面讲的很详细.汇编方面的书
应该也有介绍
julyclyde
2004-05-03
打赏
举报
回复
我也不懂。只是看书上说的已经没有了
cngdzhang
2004-05-03
打赏
举报
回复
在这个网页最下面
的
管理 | 关闭窗口
看到了吗?
不用谢:)
cngdzhang
2004-05-03
打赏
举报
回复
win32 用的是保护模式
直接用的是32位指针,寻址范围为2^32=4GB
当然没有远近指针之分了
woshialber
2004-05-03
打赏
举报
回复
to julyclyde(ASP版社区之星):是不是在win32下就没有远指针了阿?
to antijpn(antijpn):是啊是啊,hostent应该就是包含host信息的结构
to cngdzhang:怎么给你加分阿:(。
cngdzhang
2004-05-03
打赏
举报
回复
不客气
结帖
点下面的 管理 连接
woshialber
2004-05-03
打赏
举报
回复
十分感谢各位高手的指点,尤其是cngdzhang大虾:)
我是第一次在这里提问题,得到这么多的帮助十分高兴
可是我怎么找不到,结贴和给各位加分的按钮阿:(。
julyclyde
2004-05-03
打赏
举报
回复
过时了
inside VC++说现在已经不分远近了
liushuaiboy
2004-05-03
打赏
举报
回复
mark
antijpn
2004-05-03
打赏
举报
回复
在32bit环境里面都是32bit的指针,原来应该还有个巨指针,也是32bit的,没什么区别了
hostent应该是包含host信息的结构吧?
每一个项目是从菜鸟到
大虾
的进化——画图板实现和优化的感悟
一个项目是从菜鸟到
大虾
的进化 ——画图板实现和优化的感悟 开始学习使用计算机时,最早接触的就是window图画工具。用了很多年,却不曾想到它的来之不易。原来没用个应用软件是由很多很多的代码实现的啊! 小时候不知道“罗马不是一天建成的”是什么意思。经过简单画图板的实现和优化的项目过程,我得到了...
VC++中可能遇到的问题
T 如何用程序控制电源管理设置 Q 我们知道在电源选项 属性 里面可以设置 关闭监视器 1分钟之后,...,从不 关闭硬盘 1分钟之后,...,从不 待机时间 1分钟之后,...,从不请问这些设置我怎么用程序来实现 比如我现在要把关闭监视器设成 5分钟之后 请问各位
大虾
,应该怎么办?是不是要调用API?如果是,应该调用什么函数?另外补充说明:如果是调出控制面板让用户自
关于取地址运算符&以及
指针
的问题
这恐怕不是翻译的问题。如果在你所看的那本书里,出现了“取地址操作符即&,不能施加于表达式”这种说法的话,那么,这种说法是错误的。不过,考虑到这本书的特殊的背景,这种“错误”在某种程度上是可以被原谅的 —— 毕竟,如果那本书能将一切问题都讲细致的话,它就
远
远
不能止于那个篇幅了。 首先,在排除其他意义的情况下,作为操作符的&,叫做“取地址操作符”(Address Operator)。然而,这种称
(转)SSDT HOOK拦截
远
线程的创建(下)
http://nokyo.blogbus.com/logs/37850401.html 第三部分:从进程句柄获取信息 在第二部分我们使用了一个前提:可以通过进程句柄得到PID等信息。 事实上这是可行的,这一部分我们就进行介绍。我这里使用的是炉子
大虾
的《API HOOK实现ring3的进程保护》一文中提到的方法。 炉子那篇文章里讲的很详细,这里只说下如何从...
db2 错误信息解释
DB2错误信息SQLCODE SQLSTATE (按sqlcode排序)作者: 神龙
大虾
日期: 2011-10-26 17:01:09 阅读: http://www.ufaith.cn/index.php?load=read&id=65 sqlcode sqlstate 说明 000 00000 SQL语句成功完成 01xxx SQL语句成功完成,但是有警告 +012 0...
C语言
70,023
社区成员
243,263
社区内容
发帖
与我相关
我的任务
C语言
C语言相关问题讨论
复制链接
扫一扫
分享
社区描述
C语言相关问题讨论
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章