#include <stdio.h>
#include <conio.h>
int main()
{
int *arr[]={1,2,3,4,5};
printf("%d\n%d",**arr,**(arr+1));
return 0;
}
我收到一条警告,例如初始化使指针形成整数而不进行强制转换 实际上我不知道指针如何用于 char 和 int。 任何建议都会产生我的知识。感谢您提前提供的任何帮助。
最佳答案
int *arr[]
声明一个指向整数的指针数组。
由于您尝试使用整数初始化数组(由 int 指针组成),因此您会收到警告“初始化使指针来自整数而不进行强制转换”。
为了能够像问题中那样使用值 1 到 5 初始化数组,您需要将数组声明为整数。
关于c - 关于双指针的实现,例如语法变化,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18646662/