作者ya790206 (残云夺月)
看板Programming
标题Re: [问题] python有类似指标的操作吗?
时间Thu Jul 7 00:03:30 2011
C的写法:
int a[10] = {0,1,2,3,4,5,6,7,8,9};
char *ptr8 = a;
ptr8[0],ptr8[1]....的取值动作
我不知道有没其他更好的写法
这是我自己想出来的方法
python的写法:
from array import *
arr=array('i', [65,66,65])#前面的i表示signed int,
#实际大小由C implementation决定,其他符号看官方文件
ptr=arr.tostring()
print ord(ptr[0])#ord 把 字元转成数字
print ord(ptr[1])
print ord(ptr[2])
print ord(ptr[3])
print ord(ptr[4])
arr1=array('b', arr.tostring())#一次读1byte
arr2=array('h', arr.tostring())#一次读2byte
arr4=array('i', arr.tostring())#一次读4byte
希望我没误解你的意思
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 175.180.100.193
1F:推 final01:thx 但其实我也需要取2byte 跟4byte140.118.122.154 07/07 10:20
2F:→ ya790206:arr1=array('b', arr.tostring())#1byte175.180.100.193 07/07 11:53
3F:→ ya790206:arr4=array('i', arr.tostring())#4byte175.180.100.193 07/07 12:00
4F:→ ya790206:arr2=array('h', arr.tostring())#2byte175.180.100.193 07/07 12:01
※ 编辑: ya790206 来自: 175.180.100.193 (07/07 18:21)
※ 编辑: ya790206 来自: 175.180.100.193 (07/07 18:22)