初识C语言,查漏补缺-创新互联

文章目录
  • 前言
    • 操作符
      • 单目操作符
      • 三目操作符(条件操作符)
    • 常见关键字
    • 定义宏
    • 指针
      • 指针如何使用
      • 指针变量的大小
    • 结构体
      • 结构体的使用
      • 指针运用结构体
      • 总结

创新互联建站专注于林口企业网站建设,成都响应式网站建设,商城网站制作。林口网站建设公司,为林口等地区提供建站服务。全流程定制网站建设,专业设计,全程项目跟踪,创新互联建站专业和态度为您提供的服务前言

本文主要简单介绍各种操作符、关键字、宏、指针和结构体的定义和使用。

操作符 单目操作符
操作符作用使用方法
逻辑反操作例如:!flag 如果flag为真,则 !flag 为假
sizeof操作数的类型长度(以字节为单位)例如:int a = 1; sizeof(a)=4
++前置、后置++例如:a = 10;当b = a++; a = 11,b = 10;当b = ++a; a = 11,b = 11
- -前置、后置- -方法同++
三目操作符(条件操作符)

exp1?exp2:exp3

  • exp1成立,exp2计算,整个表达式的结构是 exp2 的结果
  • exp1不成立,exp3计算,整个表达式的结构是 exp3 的结果
    例如:max = a >b?a:b,a >b 情况下是max = a;a<= b情况下是max = b;
常见关键字
  • unsigned 无符号的
  • typedef 类型重命名 例如在mian函数上面输入 typedef unsigned int u_int当用unsigned int 和 u_int修饰变量时,效果一模一样
  • static 修饰局部、全局变量和函数,修饰局部变量延长生命周期,修饰全局变量和函数本质上将其外部链接属性变成了内部链接属性
  • exturn 声明外部符号 但无法声明static修饰的全局变量和函数
定义宏
#define ADD(x,y) ((x)+(y))
#includeint main()
{int sum = 10*ADD(2, 3);
    printf("sum = %d\n", sum);
    return 0;
}

结果为sum = 50,注意当((x)+(y))改为x+y,结果为23,与预期的结果不符,因此括号不可省略。

指针

在讲指针前我首先需要了解内存。一块空间可以划分为很多个内存单元。
在这里插入图片描述

每一个内存单元为一个字节。
每一个内存单元都需要编号,,通过这些编号计算机可以找到对应的内存单元,这些编号叫做地址,也叫指针,所以指针就是地址。
我们知道 int 存放空间是4个字节即4个内存单元。我们假设 int a = 10;那a的地址是哪一个字节呢?实际在a的地址是4个字节中的第一个字节。

指针如何使用
#includeint main()
{int a = 10;
	int* pa = &a;
	*pa = 20;
	printf("%d", a);
}

我们用pa来存放指针,pa称为指针变量,其类型是int* 类型;通过使用 * 解引用操作符访问pa 修改a的值,因此上述结果a最终输出20。

指针变量的大小
  • 指针变量的大小取决于变量的大小
  • 32位平台下是32bit位(4个字节)
  • 64位平台下是64bit位(8个字节)
结构体

对于一个复杂对象无法简单用单个数据类型进行描述,因此C语言引入结构体概念。

结构体的使用
#includestruct Book//定义结构体
{char name[20];//书名用char类型
	int price;//价格

};
int main()
{struct Book b1 = {"算法与数据结构",60 };
	                                  //结构体变量.结构体成员名
	printf("书名:《%s》 定价:%d 元\n", b1.name, b1.price);
}
指针运用结构体

由于我们已经学过指针,我们不妨运用于一下指针。

#includestruct Book//定义结构体
{char name[20];//书名用char类型
	int price;//价格

};
void print(struct Book* pa)
{printf("书名:《%s》 定价:%d 元\n", (*pa).name, (*pa).price);
	//printf("书名:《%s》 定价:%d 元\n", pa->name, pa->price);效果一样
}
int main()
{struct Book b1 = {"算法与数据结构",60 };
	print(&b1);
}
总结

本文旨在回顾C语言的一些简单概念,虽然简单但是整理内容也花费我不少时间,希望对大家有所帮助!

你是否还在寻找稳定的海外服务器提供商?创新互联www.cdcxhl.cn海外机房具备T级流量清洗系统配攻击溯源,准确流量调度确保服务器高可用性,企业级服务器适合批量采购,新人活动首月15元起,快前往官网查看详情吧


文章题目:初识C语言,查漏补缺-创新互联
文章URL:http://hbruida.cn/article/dheheh.html