C++
kernel_main
这个作者很懒,什么都没留下…
展开
-
操作系统模拟页面调度算法(OPT、FIFO、LRU)演示(vc2010调试通过)(二)
#include #include #include #include /*************************************************************************@description: 模拟虚拟存储管理器的页面调度*@author : kernel_main*@create time: 2014.05.22原创 2014-05-23 01:09:14 · 2478 阅读 · 1 评论 -
vc++控制台窗口编程:自定义控制台窗口
#include#include#include#define RTN_OK 1#define RTN_ERR 0int ConsoleTest(){ HANDLE hOut; hOut = GetStdHandle(STD_OUTPUT_HANDLE);// 获取标准输出设备句柄 CONSOLE_SCREEN_BUFFER_INFO bInfo; // 窗口信息原创 2012-12-09 23:04:00 · 2322 阅读 · 0 评论 -
VC对环境变量的获取与封装
// ProcInfo.cpp : Defines the entry point for the console application.//对环境变量的获取与封装#include "stdafx.h"#include "windows.h"#include "conio.h"class CEnvironment{public: CEnvironment(); ~CEnvi原创 2012-11-28 22:31:23 · 2437 阅读 · 0 评论 -
vc中线程的本地存储
// ThreadTls.cpp : Defines the entry point for the console application.//线程的本地存储(TLS)/* TLS的作用 当多个线程使用同一个全局或者静态变量的时候 由于各个线程会各自对该变量赋值操作,那么数据会被 不同的线程覆盖,即这些变量对于线程只有一个副本。 为了各自线程保存各自的数据,所以引入了TLS,一旦使原创 2012-11-28 22:30:12 · 908 阅读 · 0 评论 -
VC中互斥的使用
// Mutex.cpp : Defines the entry point for the console application.///* 互斥的使用 1 互斥的创建 CreateMutex( NULL, FALSE,//创建后互斥的拥有者,TRUE当前的线程拥有这个线程, FALSE不拥有 NULL );// 2 等候互斥 WaitForSingleObject原创 2012-11-28 22:28:38 · 5375 阅读 · 0 评论 -
百万节点的链表,针对各个group排序,输出各组top10的节点(top10是从小到大,取后面最大值top10)
一条1百万节点的单向链表,链表所有节点是按value字段从小到大的顺序链接;下面是一个节点的结构 typedef struct node_t{ int value; // 节点排序字段 int group; //组号: 0,1,2,3,4,5,6,7,8,9 struct node_t *pnext; // 下个节点的指针 }node_t; node_原创 2012-11-28 22:11:38 · 1281 阅读 · 0 评论 -
MFC关于文件查找与读写
// MFC_File.cpp : Defines the entry point for the console application.//文件读取胡时间是很漫长的#include "stdafx.h"#include "afx.h"#include "conio.h"void File(){ CFile file; //创建一个文件 if(FALSE == file.O原创 2012-11-28 22:04:20 · 627 阅读 · 0 评论 -
windows多线程同步
#include #include using namespace std;DWORD WINAPI Fun1Proc(LPVOID lpParameter);DWORD WINAPI Fun2Proc(LPVOID lpParameter);int index = 0;int ticket = 100;HANDLE g_hMutex;int main(){ HANDL原创 2012-11-14 23:33:10 · 497 阅读 · 0 评论 -
Tinyxml解析xml优化(vc6.0调试ok)
TiXmlNode * FindChildNode(TiXmlNode * pNode,string strNodeName,string strNodeAttrName,string strNodeAttrValue){ // 定义一个TiXmlDocument类指针 TiXmlNode * pSelectNode = NULL; TiXmlNode * pChildNode =原创 2012-11-12 23:30:39 · 2604 阅读 · 0 评论 -
图形界面程序使用控制台窗口
图形界面程序使用控制台窗口http://www.cppfans.com/articles/ideprog/consolewin.asp看到这篇文章,很不爽,自己在vc上重新搞了一把:// ConsoleTestDlg.cpp : implementation file//#include "stdafx.h"#include "ConsoleTest.h"#include "Co原创 2012-10-25 23:34:44 · 1582 阅读 · 0 评论 -
TinyXml查找唯一节点及修改节点操作
// 读者对象:对TinyXml有一定了解的人。本文是对TinyXml工具的一些知识点的理解。// 1 TinyXml中对TiXmlNode进行了分类,是用一个枚举进行描述的。// enum NodeType// {// DOCUMENT, 文档节点// ELEMENT, 元素节点// COMMENT, 还没弄清楚// UNKNOWN, 未知节点//原创 2012-10-17 23:22:13 · 16231 阅读 · 4 评论 -
Tab control控件使用方法
在主对话框中初始化函数OnInitDialog()中加入// TODO: 在此添加额外的初始化代码 TCITEM item; item.mask = TCIF_TEXT; item.pszText = _T("覆盖率数据收集"); m_ctl_tb.InsertItem (0,&item); item.pszText = _T("覆盖率报告处理"); m_ctl_tb.Ins原创 2012-12-23 15:00:52 · 3718 阅读 · 0 评论 -
VC创建和结束进程
进程 进程是当前操作系统下一个被加载到内存的、正在运行的应用程序的实例。每一个进程都是由内核对象和地址空间所组成的,内核对象可以让系统在其内存放有关进程的统计信息并使系统能够以此来管理进程,而地址空间则包括了所有程序模块的代码和数据以及线程堆栈、堆分配空间等动态分配的空间。进程仅仅是一个存在,是不能独自完成任何操作的,必须拥有至少一个在其环境下运行的线程,并由其负责执行在进程地址空间内的原创 2012-12-24 22:21:30 · 11640 阅读 · 1 评论 -
计算机经典书籍电子书合集(适合计算机学生学习以及程序员笔试、面试)
2楼 : JAVA篇此篇收录:.《Java 2 核心技术》、2.《Java编程语言》、3.《Effective Java》、4.《Java解惑》、5.《Java编程思想》3楼: C篇此篇收录:1.《C程序设计语言》、2.《C和指针》、3.《C陷阱与缺陷》、4.《C专家编程》、5.《你必须知道的495个C语言问题》4楼: C++篇此篇收录:1.《C++ Primer》、2转载 2014-02-23 23:45:25 · 2429 阅读 · 0 评论 -
c实现字符串拆分与提取
#include #include /*源字符串: dads{ORG}sadasdsa{一些公式}asdasds{ORG}sadsadsa{一些公式}dsadasd........... 1. S0001,ORG1,AIM0001,S0002,ORG2,S0003,AIM0002,S0004......... 2. dads,ORG,sadasdsa,0,asdasds,OR原创 2013-05-24 01:53:31 · 2721 阅读 · 0 评论 -
操作系统模拟页面调度算法(OPT、FIFO、LRU)演示(vc6.0调试通过)
// PageSwitch.cpp : Defines the entry point for the console application.//#include "stdafx.h"/*******************************************************************///请分别用FIFO、OPT算法实现“页面置换”的模拟。模拟程序的原创 2013-05-05 00:12:39 · 3515 阅读 · 0 评论 -
1. wxWidgets 介绍
wxWidgets是一个开源的跨平台的C++构架库(framework),它可以提供GUI(图形用户界面)和其它工具。目前的2.x版本支持所有版本的Windows、带GTK+或Motif的Unix和MacOS。一个支持OS/2的版本正在开发中。wxWidgets 官方网站: http://www.wxwidgets.org.该系列文章主要用于自学,主要参考wxWidgets的英文帮助文原创 2013-05-17 23:01:19 · 717 阅读 · 0 评论 -
Browse Folder dialog, search folder and all sub folders using C/C++..
//Call Browse Folder Window, Search Entire Folder and all sub-folders for desired file(s).//This function was written by Jered McFerron ( JHawkZZ ). It's a pretty handy thing to add to your//windows原创 2013-01-05 23:01:50 · 1111 阅读 · 0 评论 -
[MFC]目录选择与文件选择
最近项目中有下面需求:1. 弹出目录或文件选择对话框2. 当选中目录时将该目录下所有.c文件的绝对路径获取出来3. 当选中文件时,判断是否是.c文件,如果是.c文件将该.c文件绝对路径获取出来4. 支持多选目录 5. 支持多选文件6. 支持文件与目录混选模式,且支持多选下面我面先看一下一般目录选择和文件选择是怎么实现的吧:#include原创 2013-01-04 22:04:26 · 12195 阅读 · 2 评论 -
vs2010 c++ GUID获取代码实现
void CGuidGenDlg::OnOK(){ UpdateData(TRUE); // save current type selected AfxGetApp()->WriteProfileInt(szOptions, szGuidType, m_nGuidType); // copy the string to the clipboard if (!OpenClipboa原创 2012-12-17 22:55:12 · 3133 阅读 · 0 评论 -
vs2010 c++更安全的字符串及文件操作
void main(int argc, char *argv[]){ FILE *fp; char path[MAXPATH], pattern[MAXLINE], line[MAXLINE], out[MAXLINE]; char lineno[20], filename[MAXPATH], outfile[MAXPATH]; char fname[MAXPATH], fext[MAX原创 2012-12-17 22:11:44 · 2801 阅读 · 0 评论 -
MSDN看到的一个读写文件及路径等操作的例子,觉得可以学习一下。。。
// makehm.cpp : A simple utility to create .HM (Help Map) files from// .H (resource header files).//// This is a part of the Microsoft Foundation Classes C++ library.// Copyright (c)原创 2012-12-17 21:59:23 · 1220 阅读 · 0 评论 -
MFC 界面假死问题解决方法
在界面处理函数中,可以会长时间处理数据,导致界面假死,这时可以在代码块中加入下面代码:有两种方法:1. 单线程解决:OnBtn1(){ while(m_bLoop) { your code.... // 派发消息 MSG msg; i原创 2012-12-25 00:34:15 · 19095 阅读 · 1 评论 -
实现命令行输入及键盘消息处理
// StringTest.cpp : Defines the entry point for the console application.//#include "stdafx.h"// string::empty// string::clear#include #include #include using namespace std;vo原创 2012-09-22 01:06:20 · 1087 阅读 · 0 评论 -
Dos Console test...........(1)
// Test.cpp : Defines the entry point for the console application.//#include "stdafx.h"#include #include #include #include #include #include using namespace std;#define EXECDOSCMD "原创 2012-10-09 22:25:17 · 578 阅读 · 0 评论 -
Windows API函数获取指定文件目录下文件路径(vc6.0通过)
// FileOpt.cpp : Defines the entry point for the console application.//#include "stdafx.h"#include #include #include #include using namespace std;#define MAX_NUM 262// 删除指定目录原创 2012-10-10 00:13:30 · 4330 阅读 · 0 评论 -
Eclipse C C++ 中文语言包获取及安装MinGW
Eclipse中文包取路径,取下来与原来的Eclipse 目录合并即可:http://download.actuatechina.com/eclipse/technology/babel/babel_language_packs/R0.10.0/juno/juno.php重启Eclipse 即可。编译c/c++,需要下个MinGW装上,默认安装在C:\MinGW将C原创 2012-08-10 23:13:07 · 3963 阅读 · 0 评论 -
[笔记] fstream
#include using namespace std;int main(){ /* 首先声明一个类对象 */ ofstream fout; fout.open("output.txt"); /* 也可以把文件名作为构造参数来打开一个文件. */ //ofstream fout("output.txt"); int num = 150; char name[] = "T原创 2012-08-10 22:18:03 · 559 阅读 · 0 评论 -
C语言 网络地址
网络编程中,或多或少都会与网络地址打交道,我们从易到难,再来一个三层境界,菜鸟级,入门级,进阶级。下面一一说明。菜鸟级:菜鸟都知道,网络编程中要用到IP地址,IP地址是一个32为的整数,是一个unsigned int或unsigned long, 我编程中见到的int与long都是4个自己的!将一个doted字符串IP地址转化为整型IP地址: unsigned long inet_addr转载 2012-05-22 22:24:58 · 933 阅读 · 0 评论 -
模拟UNIX系统文件管理成组连接算法(12.20更新中...)
//[原创][5.磁盘存储空间的管理/十大题型]算法全实现/*五 磁盘存储空间的管理 主要有: 位示图 和内存的位示差不多 空闲块表 和可变内存管理差不多 空闲块链 主要是UNIX成组链接法的设计与实现 UNIX系统文件管理成组连接算法说明 UNIX系统文件管理成组连接算法: 把空闲块分成若干组,把指向一组中各空闲块的指针集中一起。 这样既可方便查找,又可减少原创 2011-12-20 23:19:31 · 2931 阅读 · 1 评论 -
C++标准库中的时间需要引用time.h,可以取的本地时间或者格林威治时间,只能精确到秒
/* C++标准库中的时间需要引用time.h,可以取的本地时间或者格林威治时间,只能精确到秒*/#include "StdAfx.h"#include #include using namespace std;int main(){ //time_t是long类型,精确到秒,是当前时间和1970年1月1日零点时间的差 const time_t t = time(NULL原创 2011-12-01 22:23:34 · 2374 阅读 · 27 评论 -
快排算法也可以这样实现。。。@一
#include using namespace std;long L[10] = {16,85,81,21,44,4,3,68,1,77};int Partition(long *arr, int low, int high){ while(low<high) { while(low<high) { if原创 2011-11-08 14:56:10 · 611 阅读 · 0 评论 -
windows多线程编程-----2.在屏幕上随机画出一系列彩色矩形
/*********************************************************在屏幕上随机画出一系列彩色矩形**在建立多线程的Windows程序时,需要在「Project Settings」对话框中做一些修改。选择「C/C++」页面标签,*然后在「Category」下拉式清单方块中选择「Code Generation」。*在「Use R原创 2011-11-25 23:50:38 · 1034 阅读 · 0 评论 -
从文件中读取数字并排序
// FileToolsTest.cpp : Defines the entry point for the console application.////#include "heapSort.h"#include #include #include #include // #include using namespace std; #define ARRAY_SIZE 1原创 2012-08-25 00:37:03 · 3726 阅读 · 0 评论 -
c++获取控制台输出
// Test.cpp : Defines the entry point for the console application.//#include "stdafx.h"#include #include #include #include using namespace std;#define EXECDOSCMD "ping www.原创 2012-09-04 22:43:24 · 7663 阅读 · 0 评论 -
C++ tinyxml解析小试及VC6.0调试中遇到的问题
今天想解析一下xml,从xml文件获取某个字段的值,从网上找了下面东东:读取和设置xml配置文件是最常用的操作,试用了几个C++的XML解析器,个人感觉TinyXML是使用起来最舒服的,因为它的API接口和Java的十分类似,面向对象性很好。TinyXML是一个开源的解析XML的解析库,能够用于C++,能够在Windows或Linux中编译。这个解析库的模型通过解析XML文件,原创 2012-09-17 21:58:29 · 1263 阅读 · 0 评论 -
vc 调试tinyxml
#include #include "tinyxml.h"#include "tinystr.h"#include #include //#include #include using namespace std;CString GetAppPath(){//获取应用程序根目录 TCHAR modulePath[MAX_PATH]; Ge原创 2012-09-17 22:30:49 · 607 阅读 · 0 评论 -
C++标准输入输出重定向
//ProcessStdInOut.cpp//用法:// argv[1]是子进程的包含路径的完整可执行文件名// argv[2]是代替子程序StdIn的输入文件// argv[3]是代替子程序StdOut的输出文件// ProcessStdInOut C:\test.exe my_in.in my_out.out//编译:// cl ProcessStd转载 2012-09-06 23:16:08 · 7554 阅读 · 0 评论 -
Windows API函数删除指定文件目录下所有内容vc6.0通过
// FileOpt.cpp : Defines the entry point for the console application.//#include "stdafx.h"#include #include #include using namespace std;// 删除指定目录下所有文件及目录BOOL DelDirFileOpt(string szPath)原创 2012-09-06 21:57:11 · 4565 阅读 · 0 评论 -
Windows进程内标准输出重定向及其在程序调试上的应用
一、如何实现打印调试信息的方法有很多,最常用的是使用标准输出设备(如printf、cout等),也可以用OutPutDebugString输出、用DebugView工具查看,还可以写入日志文件。如果程序运行需要记录日志(log),往往需要打开个文件,或许是写入系统事件、用系统的事件查看器查看。应用程序打印调试信息、日志的方法往往是确定的,但如果是要编写一个模块或者说组件,那样的输出转载 2012-09-06 23:36:32 · 1757 阅读 · 1 评论