如何在c程序中存储变量值?

时间:2014-04-28 09:07:46

标签: c arrays pointers interrupt scanf

KERNEL变量:

s32 remainder;
s64 quotient ;

如何在C程序中读取上述变量值并将它们存储在下面的变量中?

uint32 InterruptLatency;

我正在从内核读取时间,它的类型是s32和s64,为1.3456;

如何在用户端程序中读取这个?

uint32 InterruptLatency;
uint8 measurements[32];
char buf[256];
int kernelinterrupt time()
{
    fscanf(fp, "%lu", &InterruptLatency);  // I am reading the data from kernel which is not shown here
    measurements[17] = InterrupLatency;

    // after storing it in buffer I am sending the data from but to another layer
}

是否可以读取变量值(s64和s32)并将其存储在uint32中断延迟??

2 个答案:

答案 0 :(得分:0)

使用strcpy复制字符串。运算符=不适用于字符串。

答案 1 :(得分:0)

不完全确定你想在这里做什么,但使用联盟可能会让你到处。

typedef union
{
    uint8 measurements[32];
    char buf[256];
} measBuf;

measBuf myMeasBuf;
myMeasBuf.measurements[17] = InterrupLatency;
//send myMeasBuf.buf to somewhere

要清楚 - 使用联合可能不是你想要的,你会非常不稳定,因为这里有一些系统依赖。尺寸也与我写的方式不符。一般来说,工会可以帮助你,但你必须看看你是否可以为你的用例做这项工作。