表达式必须具有带浮点指针的算术类型错误

时间:2018-12-01 10:35:39

标签: c

我下面有简单的C代码。当我对此进行编译时,在要使用bPtr例程打印*bPtrprintf的行中收到警告“表达式必须具有算术类型”。

#include <stdlib.h>
#include <stdio.h>

int main()
{
int a=5, *aPtr;
float b = 3.2, *bPtr;
double c = 3.412, *cPtr;
char d = 'a', *dPtr;

int numbers[5] = { 1,2,3,4,5 };
int *arrayPtr;

aPtr = &a;
bPtr = &b;
cPtr = &c;
dPtr = &d;
arrayPtr = &numbers[1];

printf("%u adresindeki int in degeri %d dir\n", aPtr, *aPtr);
printf("%u adresindeki float in degeri %f dir\n", bPtr *bPtr);
printf("%u adresindeki double in degeri %lf dir\n", cPtr, *cPtr);
printf("%u adresindeki char in degeri %c dir\n", dPtr, *dPtr);
printf("%u adresindeki sayilarin elemaninin degeri %d dir\n", arrayPtr, 
*arrayPtr);


system("Pause");
return 0;
}

1 个答案:

答案 0 :(得分:1)

bptr printf缺少逗号。生成的源代码b *bptr尝试将float与指针相乘,从而导致错误消息。