关于 C 编程的有趣事实
在这里,我们将看到一些有关C编程的有趣事实。这些就像下面。
有时某些switch语句的case标签可以放在if-else语句中。
示例
#include输出结果main() { int x = 2, y = 2; switch(x) { case 1: ; if (y==5) { case 2: printf("Hello World"); } else case 3: { //案例3块 } } }
Hello World
array[index]可以写成index[array]。原因是使用指针算法访问数组元素。array[5]的值为*(array+5)。如果这与5[array]的顺序相反,那么这也与*(5+array)相同。
示例
#include输出结果main() { int array[10] = {11, 22, 33, 44, 55, 66, 77, 88, 99, 110}; printf("array[5]: %d\n", array[5]); printf("5[array]: %d\n", 5[array]); }
array[5]: 66 5[array]: 66
我们可以使用<:,:>代替方括号[,]和<%,%>代替大括号{,}。
示例
#include输出结果main() <% int array<:10:> = <%11, 22, 33, 44, 55, 66, 77, 88, 99, 110%>; printf("array[5]: %d\n", array<:5:>); %>
array[5]: 66
我们可以在一些奇怪的地方使用#include。在这里,让我们考虑文件abc.txt包含“TheQuickBrownFoxJumpsOverTheLazyDog”这一行。如果我们在printf语句之后包含文件,我们可以打印该文件内容。
示例
#include输出结果main() { printf #include "abc.txt" ; }
The Quick Brown Fox Jumps Over The Lazy Dog
我们可以使用%*din忽略输入scanf()。
示例
#include输出结果main() { int x; printf("输入两个数字: "); scanf("%*d%d", &x); printf("The first one is not taken, the x is: %d", x); }
输入两个数字: 56 69 The first one is not taken, the x is: 69