摘要: http://hi.baidu.com/xchinux/blog/item/2f71f50303f2f7e409fa9343.html在Linux下获取当前运行程序可执行文件全路径(不使用real_path()函数)2009-04-05 17:03linux下的real_path()函数在Mandriva 2009中出现了buffer overflow的错误,这可能是它的一个BUG,现在通过在启动脚本(.sh)中切换到可执行文件所在的目录的方式解决获取可执行文件路径的问题:程序:int main(int argc, char **argv){ ................. boost:: 阅读全文
posted @ 2011-11-24 21:22 rookieeeeee 阅读(3294) 评论(0) 推荐(0) 编辑
摘要: Linux下如何获取当前可执行文件的文件名http://soft-app.iteye.com/blog/924938LinuxWindowsCC++C#很多时候,我们会把资源文件放到可执行文件的相对位置,比如跟可执行文件放在一起。所以很有必要获得当前可执行文件的绝对路径,然后再找到资源文件的路径。在Windows下,可以用GetModuleFileName来获得当前可执行文件的名字,但是Linux下这个情况就变的比较复杂。首先,我没有发现类似的函数,只能用argv[0]来获得可执行文件名。开始Linux 下有link/symbol link这个恶心又可爱的东西,比如你可以把/usr/local 阅读全文
posted @ 2011-11-23 14:28 rookieeeeee 阅读(4492) 评论(0) 推荐(0) 编辑
摘要: #ifdef _UNICODEwstring CPATH::GetExeName(){wchar_t ExePath[MAX_PATH];GetModuleFileNameA(NULL,ExePath,sizeof(ExePath));return ExePath;}#elsestring CPATH::GetExeName(){char ExePath[MAX_PATH];GetModuleFileNameA(NULL,ExePath,sizeof(ExePath));return ExePath;}#endif#ifdef _UNICODEwstring CPATH::GetExeName 阅读全文
posted @ 2011-11-23 11:37 rookieeeeee 阅读(153) 评论(0) 推荐(0) 编辑
摘要: 关于 Debug 和 Release 版本区别http://www.cnblogs.com/esky/archive/2008/01/13/1036993.htmlPosted on 2008-01-13 14:40 Esky 阅读(3006) 评论(1) 编辑 收藏 关于Debug和Release之本质区别的讨论本文主要包含如下内容:1. Debug 和 Release 编译方式的本质区别2. 哪些情况下 Release 版会出错2. 怎样“调试” Release 版的程序一、Debug 和 Release 编译方式的本质区别Debug 通常称为调试版本,它包含调试信息,并且不作任何优化,便 阅读全文
posted @ 2011-11-23 09:51 rookieeeeee 阅读(276) 评论(0) 推荐(0) 编辑
摘要: C++命名规范网上收的一些资料,感觉不错,有兴趣的可以kk通则:1、在所有命名中,都应使用标准的英文单词或缩写。不得使用拼音或拼音缩写,除非该名字描述的是中文特有的内容,如半角、全角, 声母、韵母等。2、所有命名都应遵循达意原则,即名称应含义清晰、明确。3、所有命名都不易过长,应控制在规定的最大长度以内。4、所有命名都应尽量使用全称。5、如果命名使用缩写,则应该使用《通用缩写表》(见附录)中的缩写;原则上不推荐使用《通用缩写表》以外的缩写,如果使用,则必须对其进行注释和说明。具体规范:1、工程名:不强制统一。2、文件名:·基于工程名,开头3个字母应表明与哪一个工程相关。·后 阅读全文
posted @ 2011-11-21 12:55 rookieeeeee 阅读(281) 评论(0) 推荐(0) 编辑
摘要: 001// 线程实现2.cpp : 定义控制台应用程序的入口点。 002// 003#include "stdafx.h" 004005using namespace std; 006007008DWORD WINAPI Fun1Proc(LPVOID lpParameter);//thread data 009DWORD WINAPI Fun2Proc(LPVOID lpParameter);//thread data 010011012int index=0; 013int tickets=10; 014HANDLE hMutex; 015016017int _tmai 阅读全文
posted @ 2011-11-15 19:07 rookieeeeee 阅读(301) 评论(0) 推荐(0) 编辑
摘要: //Inifile.h/***************************************************************** 文件名:读取当前目录下CIniFile类文件 日期:2004-1-18 作者:chao_jie E_Mail:chaojie2003@yahoo.com.cn 功能:系统提供的WriteProfileInt()等函数,写到注册表或 系统ini文件里,调用比较麻烦,而且会占用注册表资 源,下载了网上的ini类用起来又不太顺手,所以参照 写了一个读取当前目录下ini文件的类。程序有详细的 注释,欢迎批评指正。***********... 阅读全文
posted @ 2011-11-15 14:37 rookieeeeee 阅读(2292) 评论(0) 推荐(0) 编辑
摘要: 前些天见有个网友问怎么用API来实现对INI文件的读写,这个问题我也早就想实现一下,可一直没有做,现在终于又多了一个理由来研究它了用API写INI文件的函数有BOOL WritePrivateProfileString(LPCTSTR lpAppName,// 节名LPCTSTR lpKeyName,// 键名 LPCTSTR lpString,// 添加的字符串 LPCTSTR lpFileName // Ini文件名 );BOOL WritePrivateProfileStruct(LPCTSTR lpszSection,// pointer to section nameLPCTSTR. 阅读全文
posted @ 2011-11-14 15:56 rookieeeeee 阅读(857) 评论(0) 推荐(0) 编辑
摘要: ini文件(即Initialization file),这种类型的文件中通常存放的是一个程序的初始化信息。ini文件由若干个节(Section)组成,每个Section由若干键(Key)组成,每个Key可以赋相应的值。读写ini文件实际上就是读写某个的Section中相应的Key的值,而这只要借助几个函数即可完成。一、向ini文件中写入信息的函数1. 把信息写入系统的win.ini文件BOOL WriteProfileString( LPCTSTR lpAppName, // 节的名字,是一个以0结束的字符串 LPCTSTR lpKeyName, // 键的名字,是一个以0结束的字符串。若为N 阅读全文
posted @ 2011-11-14 15:42 rookieeeeee 阅读(6194) 评论(0) 推荐(0) 编辑
摘要: 方法一、 POFSTRUCT lpOpenBuf=new OFSTRUCT; HFILE hFile=OpenFile(strFileName,lpOpenBuf,OF_EXIST); if(hFile!=HFILE_ERROR) { // file exist. } 方法二、 #include CString m_Edit=“f://test.txt”;//从Edit得到的字符串 ifstream infile(m_Edit); if(!infile) { AfxMessageBox( "该文件不存在 "); } 方法三、 char *lpszStr= "C:/ 阅读全文
posted @ 2011-11-13 17:40 rookieeeeee 阅读(5316) 评论(0) 推荐(0) 编辑