函数 free 的原型
函数 free 的原型如下:
void free( void * memblock ); 为什么 free 函数不象 malloc 函数那样复杂呢?
这是因为指针 p 的类型以及它所指 的内存的容量事先都是知道的,语句 free(p)能正确地释放内存。
如果 p 是 NULL 指针, 那么 free 对 p 无论操作多少次都不会出问题。
如果 p 不是 NULL 指针,那么 free 对 p 连续操作两次就会导致程序运行错误
 #include <iostream>
 /* run this program using the console pauser or add your own getch, system("pause") or input loop */
 using namespace std;
 //声明引用参数的函数模板原型
 template <class T> void swap(T &x, T &y);
 //定义一个结构类型
 struct student {
     int n;
     char name[];
     float grade;
 };
 int main(int argc, char** argv) {
         //交换两个int型变量中的数据
     int m=,n=;
     cout<<"m="<<m<<"  n="<<n<<endl;
     swap(m,n);
     cout<<"m="<<m<<"  n="<<n<<endl;
     cout<<"-------------------"<<endl;
     //交换两个double型变量中的数据
     double x=3.5,y=5.7;
     cout<<"x="<<x<<"  y="<<y<<endl;
     swap(x,y);
     cout<<"x="<<x<<"  y="<<y<<endl;
     cout<<"-------------------"<<endl;
     //交换两个char型变量中的数据
     char c1='A',c2='a';
     cout<<"c1="<<c1<<"  c2="<<c2<<endl;
     swap(c1,c2);
     cout<<"c1="<<c1<<"  c2="<<c2<<endl;
     cout<<"-------------------"<<endl;
     //交换两个结构变量中的数据
     student s1={,"ZhangHua",};
     student s2={,"LiWei",95.5};
     cout<<"s1:  ";
     cout<<s1.n<<"  "<<s1.name<<"  "<<s1.grade<<endl;
     cout<<"s2:  ";
     cout<<s2.n<<"  "<<s2.name<<"  "<<s2.grade<<endl;
     swap(s1,s2);
     cout<<"swap(s1,s2):"<<endl;
     cout<<"s1:  ";
     cout<<s1.n<<"  "<<s1.name<<"  "<<s1.grade<<endl;
     cout<<"s2:  ";
     cout<<s2.n<<"  "<<s2.name<<"  "<<s2.grade<<endl;
     return ;
 }
 //定义名为swap的函数模板用于交换两个变量中的数据
 template <class T> void swap(T &x, T &y)
 {
     T temp;
     temp=x;
     x=y;
     y=temp;
 }
函数 free 的原型的更多相关文章
- 前端笔记之JavaScript面向对象(一)Object&函数上下文&构造函数&原型链
		一.对象(Object) 1.1 认识对象 对象在JS中狭义对象.广义对象两种. 广义:相当于宏观概念,是狭义内容的升华,高度的提升,范围的拓展.狭义:相当于微观概念,什么是“狭”?因为内容狭隘具体, ... 
- this直接加在函数或者是 “原型”对象的区别
		如果加在函数上,可以用函数直接调用,如果是加在原型对象时,那就的创建新对象,才能使用,最重要的是影响继承 直接加在函数上的,不能被新对象继承 
- 关于gcc编译器中函数不用进行原型声明的解释
		经过大量实验和参考网上的说法得出一个结论: gcc编译器中,函数可以不用提前进行原型声明,编译器会把函数调用同时认为是声明.需要注意的是,由于函数调用的时候并没有写明函数返回值,这是gcc把调用当成声 ... 
- string函数库的原型
		#ifndef __HAVE_ARCH_STRCPY /** * strcpy - Copy a %NUL terminated string * @dest: Where to copy the s ... 
- JavaScript (JS) 面向对象编程 浅析 (含对象、函数原型链、闭包解析)
		1. 构造函数原型对象:prototype ① 构造函数独立创建对象,消耗性能 function Person(name) { this.name = name; this.sayHello = fu ... 
- JavaScript学习笔记(三)——this、原型、javascript面向对象
		一.this 在JavaScript中this表示:谁调用它,this就是谁. JavaScript是由对象组成的,一切皆为对象,万物皆为对象.this是一个动态的对象,根据调用的对象不同而发生变化, ... 
- JavaScript学习总结(三)——this、原型、javascript面向对象
		一.this 在JavaScript中this表示:谁调用它,this就是谁. JavaScript是由对象组成的,一切皆为对象,万物皆为对象.this是一个动态的对象,根据调用的对象不同而发生变化, ... 
- 关于fefo函数
		feof是C语言标准库函数函数,其原型在stdio.h中,其功能是检测流上的文件结束符. 函数原型: int feof(FILE *stream); 返回值:如果文件结束,则返回非0值,否则返回0 在 ... 
- 【repost】JS原型与原型链终极详解
		一. 普通对象与函数对象 JavaScript 中,万物皆对象!但对象也是有区别的.分为普通对象和函数对象,Object ,Function 是JS自带的函数对象.下面举例说明 function f ... 
随机推荐
- xcode 模拟器,文档,离线安装
			一:xcode上的模拟器,文档,在下载时,通过apple.com下载的速度太慢了,所以我们下载之后,做一下备份,离线安装还原就行了! 二:模拟器安装 目录:/Users/<user name&g ... 
- HTTP浏览器缓存机制
			来自:http://kb.cnblogs.com/page/165307/ 浏览器缓存机制 浏览器缓存机制,其实主要就是HTTP协议定义的缓存机制(如: Expires: Cache-control等 ... 
- dojo  五 配置dojoconfig
			官方教程:Configuring Dojo with dojoConfig例子: <-- set Dojo configuration, load Dojo --> <script& ... 
- servlet awt随机图片验证码
			package rd.test; import java.awt.Color; import java.awt.Font; import java.awt.Graphics; import java. ... 
- Ajax异步打开新页面弹框被拦截,无法将参数值传递到后台
			一.Form提交,打开新页面被拦截 手动触发Form提交打开新页面是不会被拦截的,但是如果通过Ajax异步处理回调后再程序自动触发Form提交的话,就会被浏览器当成广告弹框拦截 1.暂时的解决办法:如 ... 
- Sql server注入简单认识
			登录界面常常会涉及到敏感关键字的注入 为了对应面试,再看一下 怎样防止注入, 可以过滤SQL需要参数中的敏感字符(忽略大小写) public static string Split(string in ... 
- 转 redis使用场景 简介
			Redis实战(五) 聊聊Redis使用场景 发表于 2016-11-21 | 数据存储 | Redis 文章目录 1. 使用场景说明 1.1. 计数器 1.2. 排行榜 1.3. 用于存储时间戳 1 ... 
- Oracle 10g 数据库的备份和还原
			一.备份数据库 1.在图形工具中,如sqldeveloper,pl/sqldeveloper用以下这句查找空表 select 'alter table '||table_name||' allocat ... 
- C语言复杂声明解读简明方法
			//char (*(*x[3])())[5];//x是什么类型的变量? // //分析C语言声明,关键是搞清楚这个变量是个什么东西(函数.指针.数组), //是函数那么剩下的就是他的参数和返回值, / ... 
- 安卓-APP安装后多个图标的解决
			原因是在不同Activity的intent中配置了多个LAUNCHER. <intent-filter> <action android:name="android.int ... 
