STM32CubeIde と FREERTOS を備えた STM32F412RET6 プロセッサに基づいて、STM32 ボードのファームウェアを開発しています。va_arg
ライブラリの関数 を呼び出すとstdarg.h
、初めて奇妙な番号が返されます。なんで?
コード:
void readFloat(int n, ...){
int val;
va_list vl;
va_start(vl,n);
for (int i=0;i<n;i++)
{
val=va_arg(vl,int);
}
va_end(vl);
}
/**
* @brief Function implementing the defaultTask thread.
* @param argument: Not used
* @retval None
*/
/* USER CODE END Header_StartDefaultTask */
void StartDefaultTask(void *argument)
{
readFloat(3, 1, 2, 3);
for(;;)
{
osDelay(1);
}
/* USER CODE END 5 */
}
デバッグ結果: