warning:format specifies type ‘int‘ but the argument has type ‘ int (*) ()‘

keil报错及其解决方法

printf 函数调用中,警告信息表明格式字符串指定了 int 类型,但提供的参数却是一个函数指针类型(int (*)())。这通常意味着在使用 printf 时,提供了错误的参数类型。让我们来看看这个问题:

  1. 格式字符串 %d:这告诉 printf 函数期望一个 int 类型的参数。
  2. 参数 motor_left1:根据错误信息,motor_left1 实际上是一个返回 int 类型的函数指针,而不是一个 int 类型的值。

如果意图是打印由 motor_left1 函数返回的整数值,应该先调用这个函数,并将返回值传递给 printf。修改代码如下

printf("%d \n", motor_left1());

作者:x__xR

物联沃分享整理
物联沃-IOTWORD物联网 » warning:format specifies type ‘int‘ but the argument has type ‘ int (*) ()‘

发表回复