c - c中的指针问题

标签 c pointers declaration

关于 C 编程的快速问题。我没有上过这方面的类(class),但正在网上阅读有关指针和使用的各种符号的信息。下面这行结果是一个包含 10 个整数指针的数组,还是一个包含 10 个整数数组的指针?

int *x[10];

下面的结果是否也会产生一个将 double 作为输入并返回指向字符的指针的函数?

char (*f) (double a);

提前致谢!

编辑:第一行代码输入错误。

最佳答案

将 double 作为输入并返回 char 指针的函数如下所示:

char * foo(double arg);

其中arg是你的输入double,foo是函数名,char *是返回类型,一个char指针.

char (*foo)(double arg);

声明一个函数指针,指向一个接受 double (arg) 并返回一个 char 的函数。


您尝试创建数组时缺少变量名。有两种不同的方法可以做到这一点......

int * array[10];

这声明了一个包含 10 个索引的数组,其中包含 int *、int 指针。

int (*array)[10];

这声明了一个指向大小为 10 的整数数组的指针。

关于c - c中的指针问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23283071/

相关文章:

c - Openssl RSA 中加密的字符串的最大大小

c - 指针如何与 C 中的双向链表一起工作?

c++ - 如何在矩阵中使用指针。这行代码是做什么的/意思是 : int r=**(++b);

c++ - 声明和定义不匹配

c - 将字符串扫描为十六进制字符数组

c - 非规范和非回声模式不适用于管道

c - 如何将 "split"long WndProc方法转成多个函数?

c - 由 NULL 指针分配的内存

c - 错误: extern declaration of 'i' follows declaration with no linkage

java - 标记上存在语法错误 "product1. "此标记后应有 VariableDeclaratorId