楼主: B.N.F
7547 62

peeklong [推广有奖]

  • 1关注
  • 0粉丝

已卖:3份资源

博士生

54%

还不是VIP/贵宾

-

威望
0
论坛币
2118 个
通用积分
246.8145
学术水平
15 点
热心指数
15 点
信用等级
15 点
经验
4680 点
帖子
207
精华
0
在线时间
204 小时
注册时间
2012-8-19
最后登录
2025-1-29

楼主
B.N.F 发表于 2013-9-5 12:02:11 |AI写论文
100论坛币
data a;
d=123456;
e=peeklong(addrlong(d),8);
put e=;
run;
返回结果不对。
data a;
d=put(123456,pib8.);
e=peeklong(addrlong(d),8);
put e=;
run;
返回结果对,但是得把数据put格式。
有没有简单的方法呢,如果是一个2000的array,全put一遍太麻烦了,能不能直接
data a;
d=123456;
e=peeklong(addrlong(d),8);
put e=;
run;
就行?

最佳答案

邓贵大 查看完整内容

I couldn't get peeklong to work either.
关键词:long array Data put add
已有 1 人评分学术水平 热心指数 信用等级 收起 理由
jingju11 + 5 + 5 + 5 鼓励积极发帖讨论

总评分: 学术水平 + 5  热心指数 + 5  信用等级 + 5   查看全部评分

本帖被以下文库推荐

沙发
邓贵大 发表于 2013-9-5 12:02:12
I couldn't get peeklong to work either.
  1. data _null_;
  2.         a = 123456;
  3.         x = peekclong(addrlong(a),8);
  4.         y = input(x, rb8.);
  5.         put y=;
  6. run;
复制代码
已有 1 人评分学术水平 热心指数 信用等级 收起 理由
jingju11 + 5 + 5 + 5 精彩帖子

总评分: 学术水平 + 5  热心指数 + 5  信用等级 + 5   查看全部评分

Be still, my soul: the hour is hastening on
When we shall be forever with the Lord.
When disappointment, grief and fear are gone,
Sorrow forgot, love's purest joys restored.

藤椅
双修阁主の 发表于 2013-9-5 16:36:04
直接e=peeklong(addrlong(put(d,pib8.)),8);不可以吗?

板凳
B.N.F 发表于 2013-9-5 17:33:46 来自手机
双修阁主の 发表于 2013-9-5 16:36
直接e=peeklong(addrlong(put(d,pib8.)),8);不可以吗?
直接addr和peek,put不用怎么做

报纸
B.N.F 发表于 2013-9-6 11:38:04
B.N.F 发表于 2013-9-5 17:33
直接addr和peek,put不用怎么做
在线等

地板
zhou.wen 发表于 2013-9-6 12:28:10
peeklong是获取二进制编码
data a;
d=put(123456,pib8.);
e=peeklong(addrlong(d),8);
put e=;
run;
这个例子中pib8.就是读二进制编码,所以123456是d的二进制编码,你打开dataset可以看到d的ASCII码“@?”
data a;
d=123456;
e=peeklong(addrlong(d),8);
put e=;
run;

而这个例子123456是d的ASCII,你再用peeklong读他的二进制编码当然不可能是123456!
已有 1 人评分学术水平 热心指数 信用等级 收起 理由
jingju11 + 5 + 5 + 5 精彩帖子

总评分: 学术水平 + 5  热心指数 + 5  信用等级 + 5   查看全部评分

Practice Is The Best Teacher!

7
zhou.wen 发表于 2013-9-6 12:30:08
你连你自己的code都不理解,问的问题也是没有意义的。
Practice Is The Best Teacher!

8
B.N.F 发表于 2013-9-6 15:42:36
zhou.wen 发表于 2013-9-6 12:28
peeklong是获取二进制编码
data a;
d=put(123456,pib8.);
谢谢!总算有大侠现身啦
那我怎样才能最简便的得到12345呢?
不用array变动,就能直接peeklong出12345
谢谢!

9
zhou.wen 发表于 2013-9-6 19:06:24
B.N.F 发表于 2013-9-6 15:42
谢谢!总算有大侠现身啦
那我怎样才能最简便的得到12345呢?
不用array变动,就能直接peeklong出12345
...
那你也得告诉别人你要做什么?你觉得“那我怎样才能简便的得到12345呢?”这样问问题有多少人能懂,先学会怎么提问题吧。。
看下版主怎么叫你提问题吧 @webgu
https://bbs.pinggu.org/thread-2225167-1-1.html
比如,给出原始数据样本
Practice Is The Best Teacher!

10
B.N.F 发表于 2013-9-7 11:48:12
zhou.wen 发表于 2013-9-6 19:06
那你也得告诉别人你要做什么?你觉得“那我怎样才能简便的得到12345呢?”这样问问题有多少人能懂,先学会 ...
data a;
array a(20000) _temporary_;
do i=1 to 20000;
a(i)=i;
end;
然后就是上面的那些,如果是一个一个put的话,根本不可能的。
而如果直接用的话,ASCII码(我之前不知道那是ASCII),那不就没法计算了吗?
谢谢!

您需要登录后才可以回帖 登录 | 我要注册

本版微信群
加好友,备注cda
拉您进交流群
GMT+8, 2026-2-17 20:42