1 C语言是一门编译型语言
gcc -E demo.c
gcc -S demo.c
gcc -c demo.c
2 在C/C++中,只要是以“#”开头的,都是预处理命令
#include
#define MAXSIZE 10
#ifdef n
3 %s表示的是字符串的格式
char str[] = "abcd";
printf("%s", str);
4 头文件只能放函数的声明,而源文件需要放函数的定义,这是工程开发的规范
void func();
#include
void func() {printf("Hello World");
}
int main() {func();
}
5 对于%2的位运算可以使用&1的位运算去替换
6 设有100个元素,用折半查找法去查找,最大比较次数为7次
int func(int arr[], int length, int keyword) {int low &#61; 0, high &#61; length - 1, mid;while (low <&#61; high) {mid &#61; (high - low)/2 &#43; low;if (keyword &#61;&#61; arr[mid]) {return mid;}else if (keyword >&#61; arr[mid]) {low &#61; mid &#43; 1;}else {high &#61; mid - 1;}}return -1;
}
7 二进制数字11111111111111111111111111111111&#xff08;32个1&#xff09;表示的十进制整数为-1
由符号位可知&#xff08;0正1负&#xff09;&#xff0c;此为负数&#xff0c;因此该码为补码&#xff0c;将其还原为原码步骤为&#xff1a;
- 末位减1&#xff1a;11111111111111111111111111111110
- 数值位取反&#xff1a;100000000000000000000000000000001
- 所以原码为&#xff1a;-1 * &#xff08;1 * 2^0&#xff09; &#61; -1
8 数组的大小可以通过sizeof()获得
sizeof(arr);
9 数组可以分为一维和高维&#xff0c;但是计算机底层都是按照一维数组去存储的
10 typedef可以给非结构体类型设置类型别名
typedef struct LNode {int val;struct LNode* next;
}LNode, *LinkList;
11 以下程序的输出结果为&#xff08;&#xff09;。#define ADD(x) xx main( ) { int a&#61;4,b&#61;6,c&#61;7,d&#61;ADD(a&#43;b)c; printf(“d&#61;%d”,d); } 70
12 在64位操作系统中&#xff0c;任何类型的指针变量都占8字节的空间大小
int n &#61; 1;
int* n_ptr &#61; &n;
printf("%d", sizeof(n_ptr));
13 设a为int型变量&#xff0c;执行下列赋值语句后&#xff0c;a的取值分别是&#xff08;&#xff09;a&#61;125.534; a&#61;(int)125.521%4; a&#61;5<<2; 125 1 20
14 C语言的默认执行顺序是从主函数开始向下执行的
int main() {printf("Hello World");return 0;
}
15 在C语言中要想使用printf函数需要包含下面哪个头文件&#xff1a;#include
int main() {printf("Hello World");return 0;
}
16 若有定义&#xff1a;char a;int b;float c;double d;则表达式“a&#43;b*c-d”的类型为&#xff08;&#xff09;double
17 printf函数的返回值代表着成功输出字符的个数
int main() {int n &#61; printf("Hello World");printf("%d", n);return 0;
}
18 在64位操作系统中&#xff0c;一个int类型变量占4字节的空间大小
19 任何一个字符都对应着一个整型值
char str &#61; &#39;a&#39;;
printf("%d", str);
20 字符串“hello”要大于字符串“hallo”
21 C语言的程序流程结构分为顺序结构、分支结构和循环结构
22 要想接收int arr[2] [3]这个数组&#xff0c;可以采用下面哪种形式&#xff1a;int (*p)[3];
23 2/3的值为0
24 递归函数就是函数自己调用自己的过程
25 C语言的可移植性要远远高于汇编语言
26 递归函数就是函数内部自己调用自己的过程
27 一个结构体 struct Node {int a; char b, int c; char d;}; 定义的一个变量所占大小为&#xff1a;16字节
struct Node {int a;char b;int c;char d;
};
Node n;
sizeof(n);
28 异或运算^是一类“逆运算”
补充一点其他的东西
Unix系统在C之前
IDE&#xff1a;Intergrated Development Environment
Linux和MacOS是基于Unix系统