【问题标题】:Converting Java method to c or objective c将 Java 方法转换为 c 或目标 c
【发布时间】:2012-08-03 08:04:27
【问题描述】:

我的问题是我有 java 方法我需要转换这个目标我正在尝试这个但它返回零

-(char *)intToByteArray:(char *)data{
int iii13=((int)((data[0]>>24),(data[1] >>16) ,(data[2] >>8),(data[3]>>0)));
char* where = (char*)malloc(10);
where[0] = *((char*)(&iii13) + 0);
where[1] = *((char*)(&iii13) + 1);
where[2] = *((char*)(&iii13) + 2);
where[3] = *((char*)(&iii13) + 3);
// 0
// char *www11 = (char *)www13; 
return where;  
}
<=====================Java Code================> is below

public static final byte[] intToByteArray(int value) {
    return new byte[] {
            (byte)(value >>> 24),
            (byte)(value >>> 16),
            (byte)(value >>> 8),
            (byte)value};
}

我想要 返回 char 本身,所以任何人都可以建议我正确的方法

【问题讨论】:

    标签: java objective-c char int


    【解决方案1】:

    你的意思是?

     // assuming you have a little endian processor.
     long* where = (long*) malloc(4);
     *where = value;
     return (char *) where;
    

    【讨论】:

    • 那么它本身也返回零
    • 你的意思是4个零吧?因为如果你给它一个小于 1600 万的数字,那么第一个字节将是 0。
    猜你喜欢
    • 1970-01-01
    • 2010-09-16
    • 1970-01-01
    • 1970-01-01
    • 2014-06-02
    • 1970-01-01
    • 2013-09-17
    • 1970-01-01
    • 2016-06-04
    相关资源
    最近更新 更多