C++ 如何在c++;
我正在尝试使用以下方式访问我的系统温度: 如您所见,数据结构如下:C++ 如何在c++;,c++,windows,C++,Windows,我正在尝试使用以下方式访问我的系统温度: 如您所见,数据结构如下: typedef struct core_temp_shared_data { unsigned int uiLoad[256]; unsigned int uiTjMax[128]; unsigned int uiCoreCnt; unsigned int uiCPUCnt; float fTemp[256]; float fVID;
typedef struct core_temp_shared_data
{
unsigned int uiLoad[256];
unsigned int uiTjMax[128];
unsigned int uiCoreCnt;
unsigned int uiCPUCnt;
float fTemp[256];
float fVID;
float fCPUSpeed;
float fFSBSpeed;
float fMultiplier;
char sCPUName[100];
unsigned char ucFahrenheit;
unsigned char ucDeltaToTjMax;
}CORE_TEMP_SHARED_DATA,*PCORE_TEMP_SHARED_DATA,**PPCORE_TEMP_SHARED_DATA;
但是,我对C++编程很陌生,不理解如何访问其中的一个数据。我试过这个:
cout << core_temp_shared_data::fTemp;
什么是有效用途?创建该类型的新对象,将成员设置为有意义的值,并通过对象访问它
core_temp_shared_data obj;
obj.fMultiplier = 0;
std::cout << obj.fMultiplier;
核心温度共享数据对象;
obj.F乘法器=0;
std::cout您需要创建一个类似于C中的结构/类的实例
CORE_TEMP_SHARED_DATA shared_data;
shared_data.fVID = 0.5f;
或通过动态分配:
PCORE_TEMP_SHARED_DATA shared_data = new CORE_TEMP_SHARED_DATA;
shared_data->fVID = 0.5f;
声明指针PCORE\u TEMP\u SHARED\u DATA
和指针PPCORE\u TEMP\u SHARED\u DATA
typedef-s不会给您带来太多,实际上会降低代码的可读性和可理解性。在阅读代码时,快速理解什么是指针非常重要……我没有把它放在那里。库的开发人员做到了。我已经将代码修改为:core_temp_shared_data obj;obj.fTemp=0;这不管用。每次我运行它时,它只打印0。我需要能够从中检索信息,这每次都会给我同样的信息。@user1803425,你会惊讶它打印出0
?就像我说的。。。我是NoOB。@ USE18032525,那么您应该从一本书中学习C++,而不仅仅是在IDE中抛出代码片段,希望它能起作用。
PCORE_TEMP_SHARED_DATA shared_data = new CORE_TEMP_SHARED_DATA;
shared_data->fVID = 0.5f;