C专家编程第一天
2013-12-08 23:11
302 查看
const限定符的使用:
const char * a;//a是一个指针变量,它指向有const限定符的char类型常量数据。
char * const a;//a是一个有const限定符的指针常量,它指向一个char类型的变量数据。
const char * const a;//a是一个有const限定符的指针常量,它指向有const限定符的char类型常量数据。
ANSI C标准:
两个操作数都是指向有限定符或无限定符的相容类型的指针,左边指针所指向的类型必须具有右边指针所指向类型的全部限定符。
寻常类型转换
当执行算术运算时,操作数的类型如果不同,就会发生转换。数据类型一般朝着浮点精度更高,长度更长的方向转换,整型数如果转换为signed不会丢失信息,就转换为signed,否则转换为unsigned。
#define TOTAL_ELEMENTS
5
int
d = -1, x;
if (d <= TOTAL_ELEMENTS -2)//危险!d将自动转换为unsigned
int类型
x = array[d+1];
防止一个头文件被重复包含
方法一:
#ifndef HEADFILE //测试HEADFILE宏是否被定义过
#defind HEADFILE
code1 ... //如果HEADFILE没有被定义过,则定义HEADFILE,并且编译代码段1.
#endif
方法二:
#pragma once
const char * a;//a是一个指针变量,它指向有const限定符的char类型常量数据。
char * const a;//a是一个有const限定符的指针常量,它指向一个char类型的变量数据。
const char * const a;//a是一个有const限定符的指针常量,它指向有const限定符的char类型常量数据。
ANSI C标准:
两个操作数都是指向有限定符或无限定符的相容类型的指针,左边指针所指向的类型必须具有右边指针所指向类型的全部限定符。
寻常类型转换
当执行算术运算时,操作数的类型如果不同,就会发生转换。数据类型一般朝着浮点精度更高,长度更长的方向转换,整型数如果转换为signed不会丢失信息,就转换为signed,否则转换为unsigned。
#define TOTAL_ELEMENTS
5
int
d = -1, x;
if (d <= TOTAL_ELEMENTS -2)//危险!d将自动转换为unsigned
int类型
x = array[d+1];
防止一个头文件被重复包含
方法一:
#ifndef HEADFILE //测试HEADFILE宏是否被定义过
#defind HEADFILE
code1 ... //如果HEADFILE没有被定义过,则定义HEADFILE,并且编译代码段1.
#endif
方法二:
#pragma once
相关文章推荐
- PHP eval函数使用介绍
- eclipse的svn客户端(subclipse)的安装和简单使用
- Java对象占用内存大小
- ASP、PHP与JSP
- java正则表达式 ?=等特殊部分
- Ubuntu 12.04 安装Eclipse + java EE
- 配置注解驱动的 Spring MVC
- c++培训周总结5
- WCF服务编程-非WCF应用程序使用WCF服务(转载)
- 整理学习ASP.NET MVC的资源
- WCF服务编程-WCF应用程序的消息跟踪(转载)
- MFC 添加C++类,别的类不通过C++类的定义的对象就可以直接调用C++类里面的成员函数;
- C语言 - ACM题目:软件版本问题
- 混迹于C++之拷贝赋值函数和拷贝构造函数(二)
- java-多线程2(同步框架)
- CDP VLAN TRUNK
- 通过php修改系统时间
- Java基础之创建窗口——使用网格布局管理器(TryGridLayout)
- 《C++沉思录》-第七章-句柄:第二部分
- struts2课堂笔记