c++ - 如何把指针获取的数值传递给容器?

浏览:34日期:2023-05-07

问题描述

现在有这样一个问题:首先要用

float *tmp_data;

获取数据的地址。然后要传递给

std::vector<float> data;

假设tmp_dta已经获取成功,现在如何把它的值传递给data?能否讲一下背后指针,地址的传递过程,刚学c++不是很清楚,谢谢!

问题解答

回答1:

float temp = 10;//这个是已经在栈上分配了内存的数据std::vector<float> data;//定义了一个盛放float数据内省的vector

float* tmp_data = &temp;//使用&操作符获取temp的地址

data.push_back(temp_data);//使用反过来从地址获取数据,//*temp_data会产生一个临时变量,比如叫data_,类型是float//data.push_back(*temp_data)会变成data.push_back(data_)

总结:& 从一个数据获取其地址

从一个地址获取其数据

回答2:

data.push_back(*tmp_data);

相关文章: