简要概论2
1. 函数
2. 数组
3. 操作符
4. 常见关键字
5. define 定义常量和宏
6. 指针
7. 结构体
需要看简要概论1请转以下链接
C语言简要概述1
接下来开始概述2
1.函数
函数的使用可以体现C语言的模块化的特点,使语言更加简便快捷。
直接举例子:
int add(int x, int y) //加法函数
{
int z;
z = x + y;
return z;
}
int main()
{
int num1 = 0;
int num2 = 0;
int sum;
scanf("%d %d", &num1, &num2);
sum = add(int num1,int num2);//使用函数
printf("%d\n", sum);
return 0;
}
2.数组
数组的定义:一组相同类型元素的集合
直接举例子:
//数组
int arr1[10] = { 1,2,3,4,5,6,7,8,9,10 };//整型数组
char arr2[] = { 'b','i','t' };//字符数组
char arr3[] = { "bit" };
printf("%d\n", arr1[5]); //数组下标从0开始,输出结果是6
更深了解一下:
int arr[10] = { 0 };
int i = 0;
while (i < 10)
{
scanf("%d", &arr[i]);//依次输入
i++;
}
i = 0;
while (i < 10)
{
printf("%d\n", arr[i]);//依次输出
i++;
}
}
3.操作符
算术操作符
+ - * / %
移位操作符
>> <<
位操作符
& ^ |
赋值操作符
= += -= *= /= &= ^= |= >>= <<=
单目操作符
! | 逻辑反操作 |
- | 负值 |
+ | 正值 |
& | 取地址 |
sizeof | 操作数的类型长度(以字节为单位) |
~ | 对一个数的二进制按位取反 |
– | 前置、后置– |
++ | 前置、后置++ |
* | 间接访问操作符(解引用操作符) |
(类型) | 强制类型转换 |
关系操作符
> >= < <= != ==
逻辑操作符
&& ||
条件操作符
exp1 ? exp2 : exp3
逗号表达式
exp1, exp2, exp3, …expN
下标引用、函数调用和结构成员
[] () . ->
4.常见关键字
auto break case char const continue default do double else enum
extern float for goto if int long register return short signed
sizeof static struct switch typedef union unsigned void volatile while
5.define 定义常量和宏
//define定义标识符常量
#define MAX 1000
//define定义宏
#define ADD(x, y) ((x)+(y))
6.指针
说到指针,必然会提到内存。
内存是电脑中的存储器,把内存分成一个一个小单元,并编上号,便于存储。这些编号就是小单元的地址。地址的存储就需要用到指针变量了。
int num = 10;
int *p;//p为一个整形指针变量
p = #
指针也有很多类型
int * p;
char * ch;
....
指针变量的大小取决于地址的大小
32位平台下地址是32个bit位(即4个字节)
64位平台下地址是64个bit位(即8个字节)
7.结构体
当描述有的属性比较复杂的对象时,我们就需要用到结构体。
struct Stu
{
char name[20];//名字
int age; //年龄
char sex[5]; //性别
char id[15]; //学号
};
//打印结构体信息
struct Stu s = {"张三",18,"女","123456"};
//访问结构体
printf("%s %d %s %s\n",s.name,s.age,s.sex,s.id);
struct Stu * ps = &s;//可以通过指针变量来访问
printf("%s %d %s %s\n",ps->name,ps->age,ps->sex,ps->id);