1、格式化说明符定义:

  %i,%d:输出十进制整型数

  %6d:输出十进制整型数,至少6个字符宽  

  %li,%ld:输出长整数

  %u:输出无符号整数

  %lu:输出无符号长整数(相当于:unsigned long int)

  %f,%g:输出浮点类型数

  %.2f:输出浮点类型数,小数点后有两位小数

  %lf:输出双精度浮点数

  %o:输出八进制数

  %e:以科学计数法,输出浮点数

  %c:输出字符

  %s:输出字符串

  %p,%x:输出变量的内存地址和十六进制数

2、转义字符:

  \a             响铃符

  \b             回退符

  \f              换页符

  \n             换行符

  \r             回车符

  \t              横向制表符

  \v             纵向制表符

  \\             反斜杠

  \?             问号

  \’                     单引号

  \”             双引号

  \ooo         八进制数

  \xhh            十六进制数

3、

  #include<>:告诉编译器去系统默认的路径寻找相关的文件。

  #include"":告诉编译器先去源程序所在目录下寻找,如果没有就去系统默认路径寻找。

  任何变量的声明都可以使用const限定符限定;该限定符指定变量的值不能被修改;对数组而言,const限定符指定数组所有元素的值都不能被修改。const限定符也可配合数组参数使用,它表明函数不能修改数组元素的值;如果试图修改const限定符限定的值,其结果取决于具体的实现。

4、枚举的概念:

  枚举是C语言中的一种基本数据类型,并不是构造类型,它可以用于声明一组常数。当一个变量有几个固定的可能取值时,可以将这个变量定义为枚举类型。比如,你可以用一个枚举类型的变量来表示季节,因为季节只有4种可能的取值:春天、夏天、秋天、冬天。

// 定义一种枚举类型

enum Season {spring, summer, autumn, winter};

// 定义一个枚举变量s

enum Season s = winter;

// 定义枚举类型的同时定义一个枚举变量s

enum Season {spring, summer, autumn, winter} s = spring;

或者: enum {spring = 3, summer, autumn, winter} s = winter;//固定值默认是从0开始排序的。

5、结构体:

  在实际应用中,我们通常需要由不同类型的数据来构成一个整体,比如学生这个整体可以由姓名、年龄、身高等数据构成,这些数据都具有不同的类型,姓名可以是字符串类型,年龄可以是整型,身高可以是浮点型。为此,C语言专门提供了一种构造类型来解决上述问题,这就是结构体,它允许内部的元素是不同类型的。struct是关键字,是结构体类型的标志。结构体的一般定义形式为:

struct 结构体名{

类型名1 成员名1;

类型名2 成员名2;

……

类型名n 成员名n;   

};

先定义结构体类型,再定义变量:

 struct Student {

     char *name;

     int age;

 };
struct Student stu;  //定义了一个结构体变量,变量名为stu。struct和Student是连着使用的。

或者:

 struct Student {

     char *name;

     int age;

 } stu;     //其中结构体类型名Student可以省略。

结构体内可以包含别的结构体。

6、typedef作用简介:

我们可以使用typedef关键字为各种数据类型定义一个新名字(别名)。如:

 typedef int Integer;

 typedef unsigned int UInterger;

 typedef float Float;

也可以在别名的基础上再起一个别名:

 typedef int Integer;

 typedef Integer MyInteger;

 typedef char *String;  //给指针类型char *起别名为String。

使用typedef给结构体起别名:

 struct MyPoint {

     float x;

     float y;

 };

 typedef struct MyPoint Point;  // 起别名

 int main(int argc, const char * argv[]) {

     Point p;  // 定义结构体变量

     p.x = 10.0f;

     p.y = 20.0f;

     return ;

 }

 // 定义一个结构体,顺便起别名

 typedef struct MyPoint {

     float x;

     float y;

 } Point;  //Point为别名,结构体名称MyPoint可省略。

格式化说明符定义、转义字符、枚举、结构体、typedef的更多相关文章

  1. 我学C的那些年[ch02]:宏,结构体,typedef

    c语言的编译过程: 预处理 编译 汇编 链接 而预处理中有三种情况: 文件包含( #include ) 条件编译(#if,#ifndef,#endif) 宏定义( #define ) 宏就是预处理中的 ...

  2. C#学习笔记_12_枚举&结构体

    12_枚举&结构体 枚举 是一种数据类型 适用于某些取值范围有限的数据 语法: [访问权限修饰符] enum 枚举名 { 枚举值 } 枚举名遵循大驼峰命名法 枚举一般情况下是和switch c ...

  3. 5.Swift枚举|结构体|类|属性|方法|下标脚本|继承

    1. 枚举: ->在Swift中依然适用整数来标示枚举值,需搭配case关键字 enum  Celebrity{  case DongXie,XiDu,Nandi,BeiGai }  // 从左 ...

  4. Swift枚举|结构体|类|属性|方法|下标脚本|继承

    1. 枚举: ->在Swift中依然适用整数来标示枚举值,需搭配case关键字 enum  Celebrity{  case DongXie,XiDu,Nandi,BeiGai }  // 从左 ...

  5. 结构体 typedef关键字

    1 结构体 #include <iostream> #include <cstring> using namespace std; void printBook( struct ...

  6. C语言学习笔记--枚举&结构体

    枚举 枚举是一种用户定义的数据类型,它用关键字enum以如下语法格式来声明: enum 枚举类型名字 {名字0,名字1,...,名字n}: 枚举类型名字通常并不真的使用,要用的是大括号里面的名字,因为 ...

  7. 结构体 + typedef

    简单结构体 struct student{ char name[20];   //可以用scanf或者直接赋值 *如果用char *name  在用scanf时没有内存接收 long id; int ...

  8. Python 定义及使用结构体

    Python中没有专门定义结构体的方法,但可以使用class标记定义类来代替结构体,其成员可以在构造函数__init__中定义,具体方法如下. class seqNode: def __init__( ...

  9. Linux中的两个经典宏定义:获取结构体成员地址,根据成员地址获得结构体地址;Linux中双向链表的经典实现。

    倘若你查看过Linux Kernel的源码,那么你对 offsetof 和 container_of 这两个宏应该不陌生.这两个宏最初是极客写出的,后来在Linux内核中被推广使用. 1. offse ...

随机推荐

  1. [未完成][Mooc]关于IO总结

    整个课程的大纲:1.编码问题.2.File类的使用3.RandomAccessFile的使用4.字节流的使用.5.字符流的使用.6.对象的序列化和反序列化. 视频1:文件的编码Eclipse的一大特点 ...

  2. Linux串口编程(转载)

    在嵌入式Linux中,串口是一个字设备,访问具体的串行端口的编程与读/写文件 的操作类似,只需打开相应的设备文件即可操作.串口编程特殊在于串 口通信时相关参数与属性的设置.嵌入式Linux的串口编程时 ...

  3. Android Studio ndk-Jni开发详细

    http://www.open-open.com/lib/view/open1451917048573.html Java Native Interface (JNI)标准是java平台的一部分,它允 ...

  4. JAVA TCP网络编程学习笔记

    一.JAVA网络编程概述 网络应用程序,就是在已实现网络互联的不同计算机上运行的应用程序,这些程序之间可以相互交换数据.JAVA是优秀的网络编程语言,Java网络编程的类库位于java.net包中.J ...

  5. iOS - 字典(NSDictionary)

    1. 字典类型的常用处理 //---------------不可变字典 //1.字典的创建 NSArray *array1 = [NSArray arrayWithObjects:@"zha ...

  6. Cocos中的观察者设计模式与通知机制

    观察者(Observer)模式也叫发布/订阅(Publish/Subscribe)模式,是 MVC( 模型-视图-控制器)模式的重要组成部分.天气一直是英国人喜欢讨论的话题,而最近几年天气的变化也成为 ...

  7. iOS开发——毛玻璃透明

    主要实现的代码如下: self.rateInfoView是定义好的控制属性控件 可以改变透明度的值来改变毛玻璃透明的效果 // 虚拟交易费率弹窗 - (void)showRateInfo{ self. ...

  8. Word中批量替换软回车

    在平时工作中,有时候需要拷贝一些截取自网页上的文字,当选中后拷贝到Word中时,有时候在每行的结尾出现如下的符号,,这给后期文字的整理带来了很多不便,在此记录从网上获取的解决方法,以免遗忘和便于查找. ...

  9. C++ 中 const 和 static 的作用

    目录 const 的主要应用如下: const 关键字使用的注意点: C++中static关键字有三个明显的作用: const的主要应用如下: const 用于定义常量:const定义的常量编译器可以 ...

  10. 【转】JavaScript中undefined与null的区别

    通常情况下, 当我们试图访问某个不存在的或者没有赋值的变量时,就会得到一个undefined值.Javascript会自动将声明是没有进行初始化的变量设为undifined. 如果一个变量根本不存在会 ...