1.枚举类型

枚举(enumerated)类型就是指它的值为符号常量而不是字面值的类型,以下面的这种形式来声明:enum   Jar_Type {CUP,PINT,GALLON,OUART}; 这条语句声明了一个类型,称为 Jar_Type。而enum  {CUP,PINT,GALLON,OUART}; 这条语句声明表示这种类型的变量以整型的方式存储,这些符号名的实际值都是整型值。这里CUP是0,PINT是1,以此类推。下面看一下一个具体的例子:

1 #include<stdio.h>2 #include<stdlib.h>3 int main()4 {5     enum{red,blue,white};6     printf("%d,%d,%d",red,blue,white);7     system("pause");8     return 0;9 }

结果如下:

如果换成enum{red=1,blue=3,white};结果又为多少呢

适当的时候可以为这些符号名指定特定的整型值。只对部分符号名赋值也是合法的,如果某个符号名未显式指定一个值,那么它的值就比前面一个符号名的值大1。

2.声明指针

在声明指针变量时,你也可以为它指定初始值,例如:char *message="Hello world!";这条语句把message声明为一个指向字符的指针,并用字符串常量中的第1个字符的地址对该指针进行初始化。这个声明的理解,尤其要注意,表面上看上去初始值似乎是赋给表达式*message,事实上它是赋给message本身的。换句话说,前面一个声明相当于:

char *message;

message="Hello world!";看下面这个例子:

 1 #include<stdio.h> 2 #include<stdlib.h> 3 int main() 4 { 5     char *message="hello,world!"; 6     //char *message; 7 //message="hello,world!"; 8     printf("%s",message); 9     printf("\nhello.world!");10     system("pause");11     return 0;12 }

结果如下:

3.常量

int  *pi;      pi是一个普通的指向整型的指针。

int  const  *pci;      则pci是一个指向整型常量的指针。你可以修改指针的值,但是你不能修改它所指向的值。

int  *  const  cpi;    则声明cpi为一个指向整型的常量指针。此时指针是常量,它的值无法修改,但你可以修改它所指向的整型的值。

4.存储类型

变量的存储类型是指存储变量值的内存类型。变量的存储类型决定变量何时创建、何时销毁以及它的值将保持多久。有三个地方可以用于存储变量:普通内存、运行是堆栈、硬件寄存器。在这三个地方存储的变量具有不同的特性。

5.运算符优先级记忆:单目运算到双目运算符,优先级高到低:算术、关系、逻辑、运算。

2011-11-23   21:23:44

转载于:https://www.cnblogs.com/candyming/archive/2011/11/23/2260805.html

1.枚举类型、声明指针、常量、存储类型、运算符优先级记忆相关推荐

  1. <C和指针>---生存期和存储类型

    1.生存期 1.c语言的变量拥有俩种生存期 --静态存储期 --自动存储期 2.相关内容 一:具有文件作用域的变量属于静态存储期,函数也属于静态存储期.属于静态存储期的变量在程序执行期间将之一占据存储 ...

  2. typescript学习笔记1-tsconfig.json配置和变量类型声明

    一,tsconfig.json {// 编译器选项"compilerOptions": {/* 基本选项 */"target": "es5" ...

  3. C语言作用域、链接属性和存储类型

    C/C++中作用域详解 作用域 编译器可以确认的4种作用域-代码块作用域.文件作用域.函数作用域和原型作用域,一般来说,标识符(包括变量名和函数名)声明的位置决定它的作用域. (1)代码块作用域 一对 ...

  4. C语言之变量存储类型与链接属性

    文章出自个人博客https://knightyun.github.io/2018/04/28/c-storage-type,转载请申明 C语言中一个重要的东西就是弄清申明变量的类型.作用域.存储类型. ...

  5. 【C】C语言函数中的变量(包括:作用域、存储类型)

    局部变量和全局变量 C语言中变量按其作用域分,可分为局部变量和全局变量,具体的解释为: 局部变量(内部变量):在定义它的函数内有效,但是函数返回后失效: 全局变量(外部变量):在所有源文件内均有效.在 ...

  6. C语言——生存期和存储类型、递归、递归求解汉诺塔、快速排序

    目录 一.生存期和存储类型 1.生存期 2.存储类型 3.自动变量(auto) 4.寄存器变量(register) 5.静态局部变量(static) 6.static 和 extern 二.递归 1. ...

  7. TypeScript详解十六:类型声明(declare)

    目录 前言 一.类型声明的作用? 1.1 declare 关键字 1.2 示例 二.常见的几种类型声明 2.1 普通类型声明 2.2 外部枚举 2.3 命名空间 三.类型声明文件 3.1 模拟类型声明 ...

  8. c语言存储汉字的变量类型,C语言之变量存储类型与链接属性

    C语言中一个重要的东西就是弄清申明变量的类型.作用域.存储类型.链接属性等,例如是整型还是浮点型,存储于普通内存还是堆栈或者寄存器,作用于全局还是局部,能否被其他文件 引用等. 链接属性 申明变量或函 ...

  9. Go 类型别名与类型声明的区别

    语法 type D = int // 类型别名 type I int // 类型声明 复制代码 注:类型别名有一个等号,类型声明没有等号 区别 类型别名和原类型完全一样,只不过是另一种叫法而已,而类型 ...

  10. C语言指针类型和所指数据的类型要一致吗

    C语言指针类型和所指数据的类型必须要一致吗 网上很多答案是:"必须,不一致会出现语法错误",但是 no try no know. 首先看下我的环境: 下面是代码: #include ...

最新文章

  1. [20180806]tune2fs调整保留块百分比.txt
  2. ncnn tensorrt
  3. 使用 autossh 建立反向 SSH 隧道管理个人计算机
  4. vue中实现美团双级联动菜单
  5. php 实现贪吃蛇游戏,C++实现简单贪吃蛇游戏
  6. think route.php,ThinkPHP5—路由(route)详解
  7. 程序员必修课--sql思维举重训练
  8. YOLO-V4解读:速度与精度的完美结合
  9. Acrok MXF Converter for Mac(专业的MXF格式视频转换工具)
  10. 低级鼠标钩子WH MOUSE LL
  11. 第四方支付平台程序源码_云计费系统源码
  12. 共探机遇 2018中国产业互联网化纤创新者大会华丽启幕...
  13. Python数据有效性DataValidation模块
  14. 水溶性CdTe/CdSe/ZnS量子点 深紫外发光光谱PL620nm-820nm
  15. 小学生计算题软件产品设计
  16. IT项目开发团队建设与管理总结(转)
  17. android+打开apk文件怎么打开,安卓手机apk文件怎么打开
  18. line-height详解
  19. 使用bat批处理脚本自动设置IP和IE代理
  20. List.toArray

热门文章

  1. 把博客园自己博客皮肤改了下
  2. Css/Js推荐类库
  3. sublime设置代码缩进
  4. [转]什么是lib文件,lib和dll的关系如何
  5. 【转】郭敬明作品中100句经典的话
  6. Composite UI Application Block(Cab)比较详细的一片文章
  7. [Flex] flex的安全沙箱,你保障了安全的同时也害苦了多少我这样的人那
  8. java框架之SpringBoot(16)-分布式及整合Dubbo
  9. Docker核心技术与实现原理
  10. spring IOC快速入门,属性注入,注解开发