打印结构指针和引用的结构成员

时间:2013-03-19 13:37:51

标签: c++ pointers struct printf

你好,我是编程的新手,我有一个范例,我需要打印一个struct类型的指针,它在每次迭代中动态获取值,并在每次迭代时打印一个defrenced struct成员。

struct my_struct
{
int x;
int y;
}
void function(){

my_struct* a=value.get() // some values will be assigned dynamically to this pointer from other part of function.

my_struct* data = new thread_data;
data->x=1 //which will get updated according the iterations and conditions
data->y=2 //which will get updated according the iterations and conditions

}

现在我需要在调用函数中打印a,x,y的值,如何打印这些值。 一些像

的东西
printf("a=%lx x=%i y=%i\n", a,x,y);

有人可以给我一些想法或如何继续吗?非常感谢

1 个答案:

答案 0 :(得分:2)

在C ++中,您可以使用std::cout

std::cout << "a=" << a << " x=" << a->x << " y=" << a->y << "\n";

否则,您的printf版本可以修复如下:

printf("a=%p x=%i y=%i\n",  a, a->x, a->y);