摘要: 很多学软件的朋友需要做C语言链表应用的课程设计,下面是我写的代码,希望对需要的人有些帮助。。。希望和大家交流一下,更希望高手指点。。已经经过(turboC 2.0编译通过)。#include <stdio.h>#include <stdlib.h>#define LEN sizeof(struct student)#define NULL 0struct student { int number; int score; struct student*next;};struct student*create() { struct s... 阅读全文
posted @ 2011-11-07 22:14 ☆A希亿 阅读(1561) 评论(0) 推荐(0)
摘要: #include#includemain(){ int *p,count; scanf("%d",&count); p=(int*)malloc(count*sizeof(int)); for(int i=0;i p[i]=i; for(int j=0;j printf("%d",p[j]);} 阅读全文
posted @ 2011-11-07 22:13 ☆A希亿 阅读(253) 评论(0) 推荐(0)
摘要: 通过动态内存分配实现c语言动态指针"数组".其实这种结构并非是一种数组,只是手动实现的一种类似数组的结构,实现类似数组的功能。应该可以说是一种伪数组结构吧。#include <stdio.h>#include <stdlib.h>main(){ char**p; int count,j,i; p=0; scanf("%d",&count); p=(char**)calloc(count,sizeof(char*)); for(j=0;j<count;j++) p[j]=(char*)malloc(10*sizeof( 阅读全文
posted @ 2011-11-07 22:12 ☆A希亿 阅读(673) 评论(0) 推荐(0)
摘要: #include <stdio.h>#include <stdlib.h>#define SHI sizeof(struct duoxiangshi)#define NULL 0struct duoxiangshi{int xishu,zhishu; struct duoxiangshi*next;};struct duoxiangshi*create() {struct duoxiangshi*head,*p1,*p2; int n; n=0; head=NULL; p2=NULL; p1=NULL; p1=(struct duoxiangshi*)mal... 阅读全文
posted @ 2011-11-07 22:11 ☆A希亿 阅读(3207) 评论(0) 推荐(0)
摘要: 接口文件poly.h#ifndef POLY_H#define POLY_H#include <iostream>#include <cstdlib>#include <cstddef>using namespace std;typedef int* intptr;class poly{public: poly(); poly(int a); poly(const poly& p); ~poly(); void creat(); friend poly operator +(const poly& p1,const poly& p2) 阅读全文
posted @ 2011-11-07 22:10 ☆A希亿 阅读(1488) 评论(0) 推荐(0)
摘要: 一个用D3D绘制2D图形的例子思路如下:(1)函数Do_Init初始化D3D,D3D设备,顶点缓冲,纹理;主要调用这几个函数: Direct3DCreate9,GetAdapterDisplayMode,CreateDevice,CreateVertexBuffer, Lock,Unlock,D3DXCreateTextureFromFile。(2)函数Do_Frame绘制一帧,主要调用这几个函数: Clear,BeginScene,EndScene,SetStreamSource,SetFVF,SetTexture, DrawPrimitive。(3)函数Do_Shutdown释放D3D资源 阅读全文
posted @ 2011-11-07 22:05 ☆A希亿 阅读(1261) 评论(0) 推荐(0)
摘要: 学习D3D9的时候遇到灵活顶点格式(FVF)中D3DFVF_XYZRHW和D3DFVF_XYZ之间差异而引起的问题。参看了同是C++博客的一篇博文,其分析如下: The RHW value, which stands for Reciprocal of Homogeneous W[1], tells Direct3D that the vertices that are being used are already in screen coordinates. This value is normally used in fog and clipping calculations and sh 阅读全文
posted @ 2011-11-07 22:05 ☆A希亿 阅读(646) 评论(0) 推荐(0)
摘要: 微软D3D设备能创建和操纵下面初基类型:l点列表l线列表l线带l三角形列表l三角形带l三角形扇区你能用IDirect3DDevice9接口中的任何粉刷方法在C++程序中粉刷原基。1.1.1.1.点列表一个点列表是一个顶点的集合,这些顶点被作为单独的点来粉刷。你的程序可以在3-D场景中用它们作为在多边形表面上开始字段、点线。下图描述了一个粉刷后的点列表。你的程序能在一个点列表上应用素材和纹理,素材或纹理的颜色仅仅出现在点上,而不是在点之间的任何地方。下面的代码显示怎么样为顶点创建点列表:struct CUSTOMVERTEX{float x,y,z;};CUSTOMVERTEX Vertices 阅读全文
posted @ 2011-11-07 22:04 ☆A希亿 阅读(394) 评论(0) 推荐(0)
摘要: 前言:本教程面向对DriectX 9.0有一定了解的读者,主要讲解DirectX 9.0的各个部分的功能及用法。希望对广大的游戏初学者有一定帮助,也好让本人对中国游戏事业的发展做出一些微不足道的贡献。作者:Fabric(由于本人是广东人,写文章难免参杂粤语写法,请见谅) 简介:ID3DXSprite是DriectX 9.0里面的一个简单模块,在DriectX 9.0帮助文档里面对其功能的描术为:“向用户提供一套简单的在屏幕上实现精灵渲染的接口。”何为精灵渲染,说白了就是渲染2D画面,ID3DXSprite帮助用户透过简单的操作就能运用DriectX 9.0制作2D游戏(渲染2D图形),ID3. 阅读全文
posted @ 2011-11-07 22:02 ☆A希亿 阅读(902) 评论(0) 推荐(0)
摘要: alpha混合原理在前面介绍的示例程序中,绘制图形的颜色总是替换当前颜色缓冲区中存在的颜色,这样后面的物体总是覆盖在原有的物体上。但是当想要绘制类似于玻璃、水等具有透明效果的物体时,这种方法显然满足不了要求。通过定义一个表示物体半透明度的alpha值和一个半透明计算公式,可以将要绘制的物体颜色与颜色缓冲区中存在的颜色相混合,从而绘制出具有半透明效果的物体。Direct3D计算alpha颜色混合的方法如下:color = (RGBsrc* Ksrc) OP (RGBdst* Kdst)其中color表示alpha混合后的颜色值,RGBsrc表示源颜色值,即将要绘制的图元的颜色值;Ksrc表示源混 阅读全文
posted @ 2011-11-07 22:01 ☆A希亿 阅读(5246) 评论(0) 推荐(0)
摘要: 还是先发DX的文档的记录:IDirect3DDevice9::SetTextureStageStateSets the state value for the currently assigned texture.HRESULT SetTextureStageState( DWORD Stage, D3DTEXTURESTAGESTATETYPE Type, DWORD Value );ParametersStage[in] Stage identifier of the texture for which the state value is set. Stage identifiers a 阅读全文
posted @ 2011-11-07 22:01 ☆A希亿 阅读(500) 评论(0) 推荐(0)
摘要: 如何组织编写模板程序前言常遇到询问使用模板到底是否容易的问题,我的回答是:“模板的使用是容易的,但组织编写却不容易”。看看我们几乎每天都能遇到的模板类吧,如STL, ATL, WTL, 以及Boost的模板类,都能体会到这样的滋味:接口简单,操作复杂。我在5年前开始使用模板,那时我看到了MFC的容器类。直到去年我还没有必要自己编写模板类。可是在我需要自己编写模板类时,我首先遇到的事实却是“传统”编程方法(在*.h文件声明,在*.cpp文件中定义)不能用于模板。于是我花费一些时间来了解问题所在及其解决方法。本文对象是那些熟悉模板但还没有很多编写模板经验的程序员。本文只涉及模板类,未涉及模板函数。 阅读全文
posted @ 2011-11-07 21:59 ☆A希亿 阅读(935) 评论(0) 推荐(0)
摘要: 【问题描述】马的遍历问题。在8×8方格的棋盘上,从任意指定方格出发,为马寻找一条走遍棋盘每一格并且只经过一次的一条路径。【初步设计】首先这是一个搜索问题,运用深度优先搜索进行求解。算法如下:1、输入初始位置坐标x,y;2、步骤 c: 如果c>64输出一个解,返回上一步骤c--(x,y) ← c计算(x,y)的八个方位的子结点,选出那此可行的子结点循环遍历所有可行子结点,步骤c++重复2显然(2)是一个递归调用的过程,大致如下:void dfs(int x,int y,int count){ int i,tx,ty;if(count>N*N) { output_so... 阅读全文
posted @ 2011-11-07 21:58 ☆A希亿 阅读(2954) 评论(0) 推荐(0)
摘要: #include <iostream.h>int board [8][8]={0};int Htry1[8]={-2,-1,1,2,2,1,-1,-2};int Htry2[8]={1,2,2,1,-1,-2,-2,-1};bool chech[8][8]={0};//标记位置是否已经被占用int n=1;//就算已走的步数void findway(int i,int j){for(int z=0;z<8;z++){if(i+Htry1[z]>=0&&i+Htry1[z]<8&&j+Htry2[z]>=0&&j 阅读全文
posted @ 2011-11-07 21:56 ☆A希亿 阅读(759) 评论(0) 推荐(0)
摘要: #include <iostream.h>struct point{int x,y;//马的位置int dir;//这一次马行走的方向};struct stack{point p[64];//存储马的位置,方便回溯};int board [8][8];int Htry1[8]={-2,-1,1,2,2,1,-1,-2};int Htry2[8]={1,2,2,1,-1,-2,-2,-1};bool chech[8][8]={0};//标记位置是否已经被占用int main(){int i,j;int top=0;int z; cout<<"请输入马的初始位置& 阅读全文
posted @ 2011-11-07 21:55 ☆A希亿 阅读(1384) 评论(0) 推荐(0)
摘要: 什么是LuaLua是具有简单数据描述的扩展编程语言(动态解析语言)。它提供了非常好的面向对象编程, 函数式编程(functional programming),数据驱动式编程(data-driven programming),它可以作为一个强大、轻量的脚本语言,供任何需要的程序使用。 Lua 以一个用 clean C 写成的库形式提供。(所谓 Clean C ,指的 ANSI C 和 C++ 中共通的一个子集)Lua例子(FOR 循环)for i=1,10 do -- the first program in every language io.write("Hello world, 阅读全文
posted @ 2011-11-07 21:54 ☆A希亿 阅读(645) 评论(0) 推荐(0)
摘要: 最近园子到处充斥着类似《告别程序员生涯,一点感慨,与诸君共勉》http://topic.csdn.net/u/20110331/00/37ad95f8-f559-497f-b527-191eb701ef77.html?99610《开发工程师人生之路(强烈推荐,分析的透彻!)》http://topic.csdn.net/u/20110323/16/16ebe2ac-bca5-49da-a050-45cf522a0828.html这样的文章。这些文章往往格调阴暗,无病呻吟,总是欲图从有限的,不愉快的个体经历得出规律性的,悲观的结论。最不可思议的是,即使这些缺乏基本文理逻辑的文章,往往能引来大批欢呼 阅读全文
posted @ 2011-11-07 21:54 ☆A希亿 阅读(208) 评论(0) 推荐(0)
摘要: VS 2005环境下生成静态lib库及调用方法生成lib方法:步骤1:新建一个空项目,建一个头文件如Test.h#pragma once#ifdef __cplusplusextern "C" {#endifint GetMin(int a, int b);#ifdef __cplusplus}#endif//其实只要 int GetMin(int a, int b);这么一句语言也会通过,其他的语句仅仅表明一个头文件在很多情况下并不是这么简单的,会有很多的定义步骤2:新建一个源文件如Test.cpp#include "Test.h"int GetMin 阅读全文
posted @ 2011-11-07 21:53 ☆A希亿 阅读(572) 评论(0) 推荐(0)
摘要: 网上看到很多对游戏编程有兴趣的朋友都在说《DirectX 游戏开发终极指南》这本书的游戏项目无法编译通过,自己研究了一下,上网也看了好多提问,终于摸索出成功编译的方法,希望跟这些朋友一起分享一下,大家一起学习一起进步。下面开始正题:首先,必须在vs2003以上的环境建立工程,因为最新的dxsdk对vc6已经不支持了,而且《DirectX 游戏开发终极指南》游戏项目中要用到的directinput在vc6下也有错误。要编译通过随书附带的游戏项目示例程序,要用早期版本DX9。0c 因为最新版本的DX9已经没有directmusic了。而本书要用到。我用的是2006年的。好,下面开始新建一个项目,编 阅读全文
posted @ 2011-11-07 21:52 ☆A希亿 阅读(1686) 评论(0) 推荐(0)
摘要: 其先序序列的第一个元素为根节点,接下来即为其左子树先序遍历序列,紧跟着是右子树先序遍历序列,故根节点已可从先序序列中分离。在中序序列中找到确定的根节点,根据中序遍历特性,在巾序序列中,根节点前面的序列即为左子树的中序遍历序列,根节点后面的即为右子树的中序遍历序列。由左右子树的中序序列长度,在该二叉树的先序序列中即可找到左右子树的先序序列的分界点,从而得到二叉树的左右子树的先序序列。递归实现:递归函数输入:二叉树的先序序列和中序序列;返回-、建好的二叉树的根节点。算法思想:1)若二叉树空,返回空;2)若不空,取先序序列第一个元素,建立根节点;3)在中序序列中查找根节点,以此确定左右子树的先序序列 阅读全文
posted @ 2011-11-07 21:51 ☆A希亿 阅读(4497) 评论(0) 推荐(1)