可能重复:
请帮我理解C中的错误a +++++ b
这是示例代码,为什么"a +++++ b"无法编译,但其他人可以?
#include <stdio.h>
#include <stdlib.h>
int main(int argc, char **argv)
{
int a = 0;
int b = 0;
int c = 0;
c = a+++b;
printf("a+++b is: %d\n", c);
c = a = b = 0;
c = a++ + ++b;
printf("a++ + ++b is: %d\n", c);
c = b = a = 0;
c = a+++ ++b;
printf("a+++ ++b is: %d\n", c);
c = b = a = 0;
c = a+++++b; …Run Code Online (Sandbox Code Playgroud) 从adream307得到一个问题,我不知道,你呢?
我想声明一个这样的函数:(我们将这种类型的函数命名为F)
- F的返回类型是"无效"
- F的参数是一个函数指针,该指针指向一个类型与F相同的函数
我可以声明这样的函数吗?
如果只在C中声明int [3],为什么可以编译2 [a].
1 #include <stdio.h>
2
3 int main(int argc, char **argv)
4 {
5 int a[3] = {1, 2, 3};
6 printf("a[2] is: %d\n", a[2]);
7 printf("2[a] is: %d\n", 2[a]);
8
9 return 0;
10 }
Run Code Online (Sandbox Code Playgroud)
而输出3,如何解释呢?