STM32CubeIDE causes hardfault only debugging

If I run debug, I always got hardfault.
Here is source codes that cause hardfault.
flight_data.imu0_accel = imu0.getRawAccel();
flight_data.imu0_gyro = imu0.getRawGyro();
flight_data.imu1_accel = imu1.getRawAccel();
flight_data.imu1_gyro = imu1.getRawGyro();
for(uint8_t i=0;i<3;i++){
flight_data.accel[i] = (int16_t)((flight_data.imu0_accel[i] + flight_data.imu1_accel[i]) / 2.0f);
flight_data.gyro[i] = (int16_t)((flight_data.imu0_gyro[i] + flight_data.imu1_gyro[i]) / 2.0f);
}
Logging("%5d,%5d,%5d,%5d,%5d,%5d,%5d,%5d,%5d\r\n",
flight_data.imu0_accel[0], flight_data.imu1_accel[0], flight_data.accel[0],
flight_data.imu0_accel[1], flight_data.imu1_accel[1], flight_data.accel[1],
flight_data.imu0_accel[2], flight_data.imu1_accel[2], flight_data.accel[2]);
Everything is alright except for hardfault. I got hardfault when I read struct data that I defined like this
struct FLIGHT_DATA{
int16_t *imu0_accel;
int16_t *imu0_gyro;
int16_t *imu1_accel;
int16_t *imu1_gyro;
int16_t accel[3];
int16_t gyro[3];
float attitude[3] = {0};
float position[2] = {0};
float velocity = 0;
float altitude = 0;
};
There are no problems get data from I2C sensors.(I'm using HAL_I2C_Mem_Read)
I'm using J-Link Base probe for debugging and download.
But when I press "Run" button on the top panel, no hardfault.
What's the problem?
