免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 2187 | 回复: 9
打印 上一主题 下一主题

诡异的hp-unix中的c程序 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2010-05-19 22:52 |只看该作者 |倒序浏览
aCC +DD64 1.c
程序异常
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
int main()
{
  char* pt;
   memset(pt,'\0',sizeof(char));
   memcpy(pt,"1",1);
   printf("%s",pt);
   return 0;
}
----------------------------------------
aCC +DD64 2.c
程序正常
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
int main()
{
   char *s="sds";
   char* pt;
   memset(pt,'\0',sizeof(char));
   memcpy(pt,"1",1);
   printf("%s",pt);
   return 0;
}
高手出来阿!!!!

论坛徽章:
0
2 [报告]
发表于 2010-05-20 00:07 |只看该作者
都是错的,搞清楚这些对你目前学编程没有帮助。从基础的来,多看点书。

论坛徽章:
1
黑曼巴
日期:2020-02-27 22:54:26
3 [报告]
发表于 2010-05-20 08:00 |只看该作者
提示: 作者被禁止或删除 内容自动屏蔽

论坛徽章:
0
4 [报告]
发表于 2010-05-20 08:32 |只看该作者
都是错的,表现正常,只是把真相掩盖了而已

论坛徽章:
0
5 [报告]
发表于 2010-05-20 08:37 |只看该作者
{:3_183:}

论坛徽章:
324
射手座
日期:2013-08-23 12:04:38射手座
日期:2013-08-23 16:18:12未羊
日期:2013-08-30 14:33:15水瓶座
日期:2013-09-02 16:44:31摩羯座
日期:2013-09-25 09:33:52双子座
日期:2013-09-26 12:21:10金牛座
日期:2013-10-14 09:08:49申猴
日期:2013-10-16 13:09:43子鼠
日期:2013-10-17 23:23:19射手座
日期:2013-10-18 13:00:27金牛座
日期:2013-10-18 15:47:57午马
日期:2013-10-18 21:43:38
6 [报告]
发表于 2010-05-20 08:41 |只看该作者
LZ基本的还没学会,都在HP下写64位的程序了{:3_182:}

论坛徽章:
0
7 [报告]
发表于 2010-05-20 09:58 |只看该作者
晕,我这道是错的,只是奇怪这个问题的发生而已!

论坛徽章:
0
8 [报告]
发表于 2010-05-20 14:17 |只看该作者
char* pt;没分配

在第二个例子中,编译器把它指向了已经分配的char *s="sds";
写法还是错的……偶然得到了正确的结果。

论坛徽章:
0
9 [报告]
发表于 2010-05-20 14:43 |只看该作者
这种问题出现错误算幸运,没出错那就危险了

论坛徽章:
0
10 [报告]
发表于 2010-05-20 16:40 |只看该作者
编译器自己不知道怎么处理的,反正都是错误的,没有分配内存
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP