C 碎片十 关键字&库函数
一、关键字
1, sizeof
sizeof关键字用于计算所占空间大小的
格式:sizeof(类型名/变量名);
2, typedef
typedef关键字用于重命名数据类型的,相当于给原来的数据类型起别名。重命名之后就可以使用新的名字,用于特定环境下的数据类型
格式:typedef 旧的类型名 新的类型名;
1. 重命名普通类型
//给int类型重新命名 一个别名 INT
typedef int INT; //给int *类型重新命名 一个别名 PointInt
typedef int * PointInt; int a = 2;
INT b = 3;//就相当于 int int *p = &a;
PointInt q = &b;//PointInt就是 int * 类型
2. 重命名结构体
typedef struct Car {
int speed;
}NewCar;
//定义了一个结构体类型struct Car 和 它的别名NewCar //定义变量 car1,car2
struct Car car1;
NewCar car2;
3. 重命名数组
//定义一个新的数组类型名ARR 就是int [3]
typedef int ARR [3]; int x[3];
//数组类型 ARR
ARR y;
4. 重命名函数
int add(int a, int b) {
return a+b;
}
//给 int (*)(int,int) 重新命名 FuncPoint
//新的名字要写在 中间
typedef int (*FuncPoint)(int,int); int (*func)(int,int) = add;
func(2,3); FuncPoint func1 = add;
func1(2,3);
3, const
const关键字也叫常量关键字用于修饰某个变量不能被改变
const int a = 3;
int const a = 3;
说明:const 在这里修饰a不能改变,也就是代码不能出现a=xxx,
const int * p1 = &a;
int const * p2 = &a;
int * const p3 = &a;
说明:
1. " *前const " 用来修饰*p1不能改变,即代码不能出现*p1=xxx,但是可以p=xxx;
2. " *后const " 用来修饰p3不能改变,即代码不能出现p3=xxx,但是可以*p=xxx;
二、库函数
1, C标准函数速查
2, C语言函数速查手册下载
C 碎片十 关键字&库函数的更多相关文章
- 作为一个新手的Oracle(DBA)学习笔记【转】
一.Oracle的使用 1).启动 *DQL:数据查询语言 *DML:数据操作语言 *DDL:数据定义语言 DCL:数据控制语言 TPL:事务处理语言 CCL:指针控制语言 1.登录 Win+R—cm ...
- 软工案例分析之OJ
项目 内容 这个作业属于哪个课程 2021春季计算机学院软件工程(罗杰 任健) 这个作业的要求在哪里 案例分析作业要求 我在这个课程的目标是 和我的团队开发一个真正的软件,一起提升开发与合作的能力 这 ...
- Java SE 第二十三讲----static关键字and final关键字
1.static关键字 [在二十二讲视频中30分钟开始讲授] 2.static修饰属性:无论一个类生成了多少个对象,所有这些对象共同使用唯一一份静态的成员变量:一个对象对该静态成员变量进行了修改,其他 ...
- C语言库函数大全及应用实例十四
原文:C语言库函数大全及应用实例十四 [编程资料]C语言库函数大全及应用实例十四 函数名: strset 功 能: 将一个串 ...
- C语言库函数大全及应用实例十二
原文:C语言库函数大全及应用实例十二 [编程资料]C语言库函数大全及应用实例十二 函数名: setrgbpalette ...
- C语言库函数大全及应用实例十
原文:C语言库函数大全及应用实例十 [编程资料]C语言库函数大全及应用实例十 函数名: qsort 功 能: 使 ...
- 谈谈一些有趣的CSS题目(十五)-- 谈谈 CSS 关键字 initial、inherit 和 unset
开本系列,谈谈一些有趣的 CSS 题目,题目类型天马行空,想到什么说什么,不仅为了拓宽一下解决问题的思路,更涉及一些容易忽视的 CSS 细节. 解题不考虑兼容性,题目天马行空,想到什么说什么,如果解题 ...
- java 轻量级同步volatile关键字简介与可见性有序性与synchronized区别 多线程中篇(十二)
概念 JMM规范解决了线程安全的问题,主要三个方面:原子性.可见性.有序性,借助于synchronized关键字体现,可以有效地保障线程安全(前提是你正确运用) 之前说过,这三个特性并不一定需要全部同 ...
- 【译】索引进阶(十二):SQL SERVER中的索引碎片【中篇】
原文链接:传送门. 为了讨论碎片产生的原因,以及避免和移除索引碎片的技术,我们必须从本进阶系列后续将介绍的两个章节借用一些知识点:创建/更新索引的知识,以及向一个索引表插入数据行的相关知识. 当我们讲 ...
随机推荐
- 【总结整理】JQuery小技巧
var item=$("#content").find(".item");//效率最高 var item=$("#content .item" ...
- 第七篇 elasticsearch 链接mysql不会更新
这是我键的索引 "settings":{ "number_of_shards":3, "number_of_replicas":2 }, & ...
- Flask09 原始输出、转义、XSS攻击、过滤器???
1 怎么在jinja模板中原始输出模板语法 1.1 用双引号引起来后放到 {{ }} 中 例如 {{ "{{}}" }} 输出 1.2 利用raw 例如 {% raw %} {% ...
- MyBatis入门基础
转自http://www.cnblogs.com/selene/p/4604605.html 话不多说,先看看原始的JDBC程序代码,看看这样的代码存在什么样子的问题. package com.uti ...
- struts2的package和result的标签的属性
package的属性 1.name: 配置package元素时必须指定name属性,这是引用该包的唯一标识. 2.extends: 可选属性,指定该包继承的父包,子包可以从一个或多个父包中继承到拦截器 ...
- [转]简短介绍 C# 6 的新特性
原文地址:http://www.oschina.net/translate/briefly-exploring-csharp-new-features 几周前我在不同的地方读到了有关C#6的一些新特性 ...
- ASP.NET MVC实现layui富文本编辑器应用
先看看视图层 在视图层,使用的是视图助手--HtmlHelper,代替我们网页中传统的表单标签元素,其中的m代表实体模型.通过视图助手,为我们生成id和name属性相同的textarea标签. 备注: ...
- linux---安装ftp并配置用户部分权限
一.启动vsftpd服务1. 启动VSFTP服务器A:cenos下运行:yum install vsftpdB. 登录Linux主机后,运行命令:”service vsftpd start”C. 要让 ...
- Go:表驱动单元测试
Go:表驱动单元测试 单元测试相当的重要,这几天实习由于单元测试没写好所以被骂了emmm 痛定思痛,立刻上网学习了一下,总算达到了预期的效果,所以写一篇文章记录一下 首先安装gotests $go g ...
- JAVA包学习笔记
包 什么是包 为了使类易于查找和使用,为了避免命名冲突和限定类的访问权限,可以将一组相关类与接口"包裹"在一起形成包. 有可能同名类的存在而导致命名冲突,而位于不同包中的类及时同名 ...