
编程语言
浮生专栏
这个作者很懒,什么都没留下…
展开
-
__declspec关键字详细用法
__declspec __declspec用于指定所给定类型与Microsoft相关的存储方式。其它的有关存储方式的修饰符如static与extern等是C和C++语言的ANSI规范,而__declspec是一种扩展属性的定义。扩展属性语法简化并标准化了C和C++语言关于Microsoft的扩展。用法:__declspec ( extended-decl-modifier )转载 2012-03-28 14:10:35 · 564 阅读 · 0 评论 -
malloc和new的区别
1.综述1,malloc与free是C++/C语言的标准库函数,new/delete是C++的运算符。它们都可用于申请动态内存和释放内存。2,对于非内部数据类型的对象而言,光用maloc/free无法满足动态对象的要求。对象在创建的同时要自动执行构造函数,对象在消亡之前要自动执行析构函数。由于malloc/free是库函数而不是运算符,不在编译器控制权限之内,不能够把执行构造函数和析构函数转载 2012-02-21 16:58:05 · 4206 阅读 · 1 评论 -
C++中的文件输入输出操作
简介本教程将以C++最基本的文件I/O(输出/输出)开始。此后,我将从更深入的方面,为你展示一些技巧,并分析给出一些有用的函数。你需要对C++有一个较好的理解,否则这个教程于你而言将是陌生而毫无用处。 你的第一个程序 首先我将给出一段代码,接着再逐行进行解释。我们的第一个程序将建立一个文件,并写入一些字符: #include void main() //程转载 2012-02-02 23:45:51 · 4698 阅读 · 1 评论 -
C++标准IO库
概述先不要急着知道怎么用这个玩意,让我们一起先来看一看C++标准IO库的框架,其实挺有意思的!那就开始吧!C++的输入输出由标准库提供,标准库提供了一族类型,支持对文件、string对象、和控制窗口等设备的读写。一方面,这些IO类型都定义了如何读写内置类型的的值,另一方面,用户在设计类时可以仿照IO标准库设施读写内置类型的方式设计自己的输入输出操作。1. 面向对象的IO库面向对象是原创 2012-02-15 14:27:50 · 6455 阅读 · 4 评论 -
C++标准库分类
C++标准库的所有头文件都没有扩展名。C++标准库的内容总共在50个标准头文件中定义,其中18个提供了C库的功能。形式的标准头文件【 例外】其内容与ISO标准C包含的name.h头文件相同,但容纳了C++扩展的功能。在 形式标准的头文件中,与宏相关的名称在全局作用域中定义,其他名称在std命名空间中声明。在C++中还可以使用name.h形式的标准C库头文件名。C++标准库的内容分为10类:转载 2012-02-02 23:47:42 · 1234 阅读 · 0 评论 -
VC程序运行时间的测试函数
介绍 我们在衡量一个函数运行时间,或者判断一个算法的时间效率,或者在程序中我们需要一个定时器,定时执行一个特定的操作,比如在多媒体中,比如在游戏中等,都会用到时间函数。还比如我们通过记录函数或者算法开始和截至的时间,然后利用两者之差得出函数或者算法的运行时间。编译器和操作系统为我们提供了很多时间函数,这些时间函数的精度也是各不相同的,所以,如果我们想得到准确的结果,必须使用合适的时转载 2012-03-27 17:08:23 · 4565 阅读 · 0 评论 -
函数调用方式总结
1、_stdcall是Pascal程序的缺省调用方式,通常用于Win32 Api中,函数采用从右到左的压栈方式,自己在退出时清空堆栈。VC将函数编译后会在函数名前面加上下划线前缀,在函数名后加上"@"和参数的字节数。 2、C调用约定(即用__cdecl关键字说明)按从右至左的顺序压参数入栈,由调用者把参数弹出栈。对于传送参数的内存栈是由调用者来维护的(正因为如此,实现可变参数的函转载 2012-03-28 14:02:54 · 1002 阅读 · 0 评论 -
C++学习
学了几个月的C++,回想起来有两个很深刻的影响:一个是类,一个是继承。这里引用C++primer上的一句话“ 面向对象编程基于三个基本概念:数据抽象,继承和动态绑定 ”,其中数据抽象就是通过类实现的,动态绑定是类继承里的知识,作为一个初学者我们可以先不知道,甚至以上的所有概念都不知道都没关系,以后可以慢慢体会到的。 这里主要想通过C++primer这本书的内容简单谈一谈C++的相关原创 2012-03-20 14:25:38 · 754 阅读 · 0 评论 -
时间复杂度的概念和计算方法
1. 概述同一问题可用不同算法解决,而一个算法的质量优劣将影响到算法乃至程程序的效率。算法分析的目的在于选择合适算法和改进算法,算法分析的方法就是预估其时间复杂度和空间复杂度。然而一个算法执行所耗费的时间,从理论上是不能算出来的,必须上机运行测试才知道。但我们都知道一个算法花费的时间与算法中语句的执行次数成正比,哪个算法中语句执行次数多,它花费时间相对就多。时间复杂度正是利用这个原理来划分原创 2012-02-20 10:41:10 · 1689 阅读 · 0 评论 -
《Python入门》
Python是一种解释性语言,类似于shell脚本语言,但同时他也可以像java一样按字节编译,生成一种近似于机器语言的中间形式。因此Python也就兼备了解释性语言的易用性和编译语言的高效性。该语言由Guido van Rossum创建于1989年,当时他只花了一个月的时间。当然这也得益于他对解释型语言ABC有着丰富的设计经验。原创 2014-08-19 10:33:00 · 819 阅读 · 0 评论 -
C 结构体使用细节
1.概述在C语言中,结构体(struct)指的是一种数据结构,是C语言中聚合数据类型(aggregate data type)的一类。可以声明结构体类型的变量、指针或数组等,用以实现较复杂的数据结构。结构体同时也是一些元素的集合,这些元素称为结构体的成员(member),且这些成员可以为不同的类型,成员一般用结构体类型对象访问。 2.结构体的定义和声明结构体的定义如下所示,st原创 2012-02-20 16:00:22 · 3092 阅读 · 1 评论 -
C++ std命名空间
1. 什么是命名空间在编程语言中,命名空间是一种特殊的作用域,它包含了处于该作用域中的所有标示符,而且其本身也是由标示符表示的。命名空间的使用目的是为了将逻辑相关的标示符限定在一起,组成相应的命名空间,可使整个系统更加模块化,最重要的是它可以防止命名冲突。就好比在两个函数或类中定义相同名字的对象一样,利用作用域标示符限定该对象是哪个类里定义的。2. C++中的命名空间定义在C++语言中原创 2012-02-04 21:44:42 · 20066 阅读 · 3 评论 -
C/C++编程规范
1. 命名规范1.1 一般命名规范C++命名规范包括文件命名规范和标识符命名规范标识是指C++中语法对象的名字(常量名、变量名、函数名、类和类别名以及预处理名等),其基本语法是以字母开头,由字母数字和下划线组成。标识符最好由两部分组成:标识前缀+含义标识。标识前缀最好用不超过三个字母的缩写词组成,缩写最好全部大写。含义标识由一个或多个单词组成时,一般原创 2012-02-07 14:40:27 · 1184 阅读 · 0 评论 -
C/C++中随机数的生成
在C语言中,rand()函数可以用来产生随机数,但是这不是真真意义上的随机数,是 一个伪随机数,是根据一个数,我们可以称它为种子,为基准以某个递推公式推算出来的一系数,当这系列数很大的时候,就符合正态公布,从而相当于产生了随机 数,但这不是真正的随机数,当计算机正常开机后,这个种子的值是定了的,除非你破坏了系统,为了改变这个种子的值,C提供了srand()函数,它的原形 是void srand(转载 2012-03-29 15:19:09 · 3023 阅读 · 0 评论 -
关于C语言的几点总结
前言 这篇文章总结了C语言中一些比较重要且易混淆的知识点,笔者目的在于自我提高,也欢迎阅读者质疑和探讨。第一点:数据类型作为一门语言,最基本的是数据类型,在C语言中基本类型包括int、char、float、double、enum类型;C语言的构造类型包括数组、结构体(struct)、共用体(union);C语言还有一个最为重要的类型----指针;除了以上类型,C语原创 2012-10-26 13:20:00 · 1666 阅读 · 2 评论 -
字符编码
字符编码出处:http://www.liaoxuefeng.com/我们已经讲过了,字符串也是一种数据类型,但是,字符串比较特殊的是还有一个编码问题。因为计算机只能处理数字,如果要处理文本,就必须先把文本转换为数字才能处理。最早的计算机在设计时采用8个比特(bit)作为一个字节(byte),所以,一个字节能表示的最大的整数就是255(二进制11111111=十进制255),如果要表示更转载 2015-08-03 20:05:12 · 537 阅读 · 0 评论