我下面有简单的C代码。当我对此进行编译时,在要使用bPtr
例程打印*bPtr
和printf
的行中收到警告“表达式必须具有算术类型”。
#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;
}
答案 0 :(得分:1)
bptr
printf
缺少逗号。生成的源代码b *bptr
尝试将float
与指针相乘,从而导致错误消息。