![]() |
中国DOS联盟-- 联合DOS 推动DOS 发展DOS --联盟域名:www.cn-dos.net 论坛域名:www.cn-dos.net/forum |
| 游客 | 登录 | 注册 | 会员 | 搜索 | 中国DOS联盟 |
|
中国DOS联盟论坛 现在时间是 2026-10-31 09:39 |
共 47,815 主题排行 / 349,930 发帖 / 今日 0 篇 / 48,290 会员排行 |
| DOS开发编程 & 发展交流 (开发室) » 求助!--DJGPP下全局变量的初始化 |
| 可打印版本 1,615 / 1 |
| 第1楼 zlz616 | 发表于 2008-09-17 16:24 |
| 新手上路 发帖 2 积分 6 | |
|
求助!--DJGPP下全局变量的初始化 初次接触DJGPP,以下程序工作正常。
#include <stdio.h> struct a { char l; int m; }; int glob; int glod={1,2,3,4,5,6,7,8,9,0}; int *bssp=NULL; int *datp=&glob; struct a a={10,11}; int main(void) { unsigned char i; for(i=0;i<10;i++) printf("%d ",glod); printf("%x ",datp); printf("%d %d",a.m,a.l); return 0; } 编译成功后运行结果为: 1 2 3 4 5 6 7 8 9 0 dd68 11 10 将数组glob的定义修改为 __attribute__ ((section (".usr"))) int glod={1,2,3,4,5,6,7,8,9,0}; 其他不变。编译成功,但执行结果变为: 0 0 0 0 0 0 0 0 0 0 dd68 11 10 也就是说对glod的初始化失效。 之所以指定变量的section属性是本人开发的程序有特殊的功能需求,哪位朋友如能提供帮助,在下不胜感激。 [ Last edited by zlz616 on 2008-9-17 at 04:27 PM ] |
|
| 第2楼 zlz616 | 发表于 2008-09-18 09:44 |
| 新手上路 发帖 2 积分 6 | |
|
没有人知道吗,哪位高手指点一下 没有人知道吗,哪位高手指点一下
|
|
|
[ 联系联盟系统管理团队 -
中国DOS联盟 -
标准版 ] Sponsored by ifanr Inc | © 2001–2023 |