以下是我的片段:

typedef struct{
   uint8_t dstEndpt;
   uint16_t srcEndpt;
   uint8_t * quality;
} DataIndT;

DataIndT * dataIndPtr;

printf("dstEndpt: 0x%02x", dataIndPtr->dstEndpt); <-- print out the value of dstEndpt

printf("dstEndpt: 0x%04x", dataIndPtr->srcEndpt); <-- print out the value of srcEndpt

但是,如何打印 quality 的值?

最佳答案

quality 是一个指针,或者像一个数组,如果要打印指向的值需要指定它。使用索引或取消引用它:

printf("quality: %d", *(dataIndPtr->quality));

使用零索引就像它是一个数组也应该打印值:
printf("quality: %d", dataIndPtr->quality[0]);

或者,如果您想要的是打印指针本身的值,那么 Michal 的答案就是您想要的。

关于c - 打印出值 uint8_t *,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/31937276/

10-11 22:06