我是C新手,我習慣Java OOP。我必須使用struct
作爲我的全局變量的持有者,系統將不斷地寫入/讀取。struct中的多個類型 - C
我在結構中有3種不同類型的變量,我不確定是否會導致問題。
另外 - 我需要在頭文件中聲明結構,以便使用它的其他C文件?
在不同的函數中訪問變量結構的最快和最好的方法是什麼? //使用這些變量的函數位於同一個C文件中。
這裏是結構本身,我提出:
struct Data
{
double percentage_Height = 0;
double speed_Height = 0;
double time_Height = 0;
int distance_Height = 0;
double percentage_Distance = 0;
double speed_Distance = 0;
double time_Distance = 0;
int distance_Distance = 0;
uint16_t valueSpeed = 0;
double speedOfMotor = 0;
int tilt = 0;
};
,並應使用一些結構領域的一個函數的例子:
int getHeight()
{
percentage_Height = getIncline()/90.0;
speed_Height = db_speed_sensor();
time_Height = 0.000027; // [h] , 100ms
distance_Height=0;
if (percentage_Height == 0)
{
percentage_Height = 1;
}
distance_Height = speed_Height * time_Height * percentage_Height * 100;
return distance_Height;
}
所以會是怎樣的訪問這些結構字段的最佳方式,而不是隻寫全局變量?
編輯:它是一個實時操作系統,所以任務(如線程一樣)將訪問結構中的數據。我不知道這是否會做出任何更改......
「系統將不斷寫入/讀取」 - 如果從線程訪問它,則比這更多。只需雙重檢查... –
那麼,它是一個實時操作系統,任務將訪問此結構。這有什麼區別嗎?我會編輯我的帖子,所以每個人都可以注意到。對不起,想說明這一點。 – Milkncookiez