代码改变世界

插入排序——C语言描述

2011-06-21 11:11 by htc开发, 175 阅读, 0 推荐, 收藏, 编辑
摘要:#include <stdio.h>#include <stdlib.h>/*函数声明部分*/void insert_sort(int par_array[], int array_size);void print_array(int par_array[], int array_size);void shell_sort(int par_array[], int array_size);/*函数定义部分*/void print_array(int par_array[], int array_size){ int i; for(i = 0; i < array_ 阅读全文

堆排序,插入,删除,调整算法(大顶堆)

2011-06-17 17:10 by htc开发, 434 阅读, 0 推荐, 收藏, 编辑
摘要:#include <stdio.h>#include <stdlib.h>/*堆以数组为组织方式,下标从0开始*/#define INIT_ARRAY_SIZE 50/*函数声明部分*/void build_heap(int par_array[], int length);void max_heap_adjust(int par_array[], int index);void heap_sort(int par_array[], int length);void max_heap_insert(int **par_array, int item_value);voi 阅读全文

堆(heap)和堆栈(stack)有什么区别

2011-06-16 17:13 by htc开发, 196 阅读, 0 推荐, 收藏, 编辑
摘要:一、预备知识—程序的内存分配一个由c/C++编译的程序占用的内存分为以下几个部分1、栈区(stack)— 由编译器自动分配释放 ,存放函数的参数值,局部变量的值等。其操作方式类似于数据结构中的栈。2、堆区(heap) — 一般由程序员分配释放, 若程序员不释放,程序结束时可能由OS回收 。注意它与数据结构中的堆是两回事,分配方式倒是类似于链表,呵呵。3、全局区(静态区)(static)—,全局变量和静态变量的存储是放在一块的,初始化的全局变量和静态变量在一块区域, 未初始化的全局变量和未初始化的静态变量在相邻的另一块区域。 - 程序结束后有系统释放4、文字常量区 —常量字符串就是放在这里的。 阅读全文

用GTK编写GUI程序

2011-06-15 20:17 by htc开发, 450 阅读, 0 推荐, 收藏, 编辑
摘要:目录:什么是GTK?编译第一个程序信号和事件(Signals and Events)普通按钮(A ordinary button)什么是GTK?GTK(GIMP Toolkit,GIMP工具包)是用作图形用户界面开发的图形库.它遵守GPL(GNU公共许可协议)。你可以使用GTK创建开源的,免费的,或者是商业的程序.之所以称它为GIMP工具包(GTK),是因为GTK创建时的最初目的是为了开发GIMP程序(通用图像处理程序).GTK的作者是:Peter MattisSpencer KimballJosh MacDonaldGTK是面向对象(object-oriented)的程序用户接口.虽然是用C 阅读全文

GTK+学习:概述 、搭建环境(Windows,Linux)、开发 收藏

2011-06-15 20:17 by htc开发, 353 阅读, 0 推荐, 收藏, 编辑
摘要:GTK+学习:概述相对于Swing之于Java,C/C++环境下的GUI构建就显得复杂得多。首先就是C/C++语言并没有一个官方的GUI库。于是,第三方类库就如雨 后春笋般成长起来。由于C/C++没有Java类似的跨平台性,所以其类库大多也是限定平台的,比如微软的MFC。当然也会有很多能够跨平台的 GUI库,比如Qt,比如wxWidget,比如我们这里所要讲解的GTK+。相对于MFC、Qt和wxWidget,GTK+使用面向对象框架的纯C语言编写。这是一个小巧但是功能丝毫没有逊色的GUI类库。Linux 下的GNOME环境就是使用GTK+编写的,还有类似于Photoshop的GIMP,更与GT 阅读全文

重载和覆写的区别

2011-06-15 13:30 by htc开发, 218 阅读, 0 推荐, 收藏, 编辑
摘要:重载是编写一个与已有函数同名但是参数表不同(参数数量活参数类型不同)的方法,它具有如下所示的特征: 1. 方法名必须相同 2. 参数列表可以不相同 3. 返回值类型可以不相同 覆写是派生类重写基类的虚函数,它具有如下所示的特征: 1. 只有虚函数和抽象方法才能够覆写 2. 具有相同的函数名 3. 具有相同的参数表 4. 具有相同的返回值类型 重载是一种语法规则,由编译器在编译阶段完成,不属于面向对象的编程;而覆写由运行阶段决定的,是面向对象编程的重要特征。 阅读全文

两种方式使用android时间和日期控件

2011-06-14 13:57 by htc开发, 236 阅读, 0 推荐, 收藏, 编辑
摘要:第一种:日期控件DatePicker.javapackage com.example.dataPicker;import android.app.Activity;import android.app.DatePickerDialog;import android.app.Dialog;import android.os.Bundle;import android.view.View;import android.view.View.OnClickListener;import android.widget.Button;import android.widget.DatePicker;pub 阅读全文

C语言基本数据类型详解

2011-06-08 22:14 by htc开发, 718 阅读, 0 推荐, 收藏, 编辑
摘要:原帖地址:http://www.cnblogs.com/jcsu/articles/1317826.html一、基本数据类型1. 基本数据类型的分类:C语言中的三种基本数据类型是:整型、实型、字符型。每种类型又可以分为常量和变量。整型常量:(1) 十进制的整型常量:由数字0~9组成。如:0、10、365、-12等。(2) 八进制的整型常量:以0开头,由数字0~7组成。如:0、010、0365、-012、011等。(3) 十六进制的整型常量:以0x或0X开头,由数字0~9、a~z或A~Z组成。如:0x11、0Xffff、0xa5、-0XAC等。注:C语言系统默认为基本整型常量。(关于“基本整型” 阅读全文

GDB 反向调试(Reverse Debugging)

2011-05-31 22:36 by htc开发, 438 阅读, 0 推荐, 收藏, 编辑
摘要:使用调试器时最常用的功能就是step, next, continue,这几个调试命令都是“往下执行”的, 但是很多时候会有这种需求:你在调试的过程中多跳过了几步而错过中间过程,这时候不得不重头调试一遍,非常麻烦。而GDB从7.0版本开始支持反向调试功能,也就是允许你倒退着运行程序,或者说撤销程序执行的步骤从而会到以前的状态。直观地来看,加入你正在使用GDB7.0以上版本的调试器并且运行在支持反向调试的平台,你就可以用以下几条命令来调试程序:reverse-continue反向运行程序知道遇到一个能使程序中断的事件(比如断点,观察点,异常)。reverse-step反向运行程序到上一次被执行的源 阅读全文

C++中Static作用和使用方法

2011-05-25 21:42 by htc开发, 223 阅读, 1 推荐, 收藏, 编辑
摘要:1、什么是static?static 是C++中很常用的修饰符,它被用来控制变量的存储方式和可见性。2、为什么要引入static?函数内部定义的变量,在程序执行到它的定义处时,编译器为它在栈上分配空间,大家知道,函数在栈上分配的空间在此函数执行结束时会释放掉,这样就产生了一个问题: 如果想将函数中此变量的值保存至下一次调用时,如何实现? 最容易想到的方法是定义一个全局的变量,但定义为一个全局变量有许多缺点,最明显的缺点是破坏了此变量的访问范围(使得在此函数中定义的变量,不仅仅受此函数控制)。3、什么时候用static?需要一个数据对象为整个类而非某个对象服务,同时又力求不破坏类的封装性,即要求 阅读全文
上一页 1 ··· 23 24 25 26 27 28 29 30 31 ··· 53 下一页