专注于互联网--专注于架构

最新标签
网站地图
文章索引
Rss订阅
1 、CString 对象的连接   能体现出 CString 类型方便性特点的一个方面就字符串的连接,使用 CString 类型,你能很方便地连接两个字符串,正如下面的例子: CString gray("Gray"); CString cat("Cat"); CString graycat = gray + cat; 要比用下面的方法好得多: char gray[] = "Gray"; char cat[] = "Cat"; char * graycat = malloc(strlen(gray) + strlen(cat) + 1); strcpy(g [阅读全文] [PDF]
  这个都是过去DOS时代汇编源码虽然已经过去了但是对于学习汇编还是有帮助汇编语言只是员门基础语言大多人掌握即可不定要深入研究....... ctable   segment para public 'DATA   db  9 dup(' ')   db  9,10,' ',12,13   db  13 dup(' ')   db  27   db  4 dup(' ')   db  ' !"#$%&',39,'*+,-./012345678 [阅读全文] [PDF]
.CString -> 1. CString cs; value; sscanf((LPCTSTR)cs, "%d", &value); 2. CString str="1234"; i = atoi((char*)LPCTSTR(str)); 2.CString -> char * (LPCTSTR)m_srvName 3.获取CString思路方法 left [阅读全文] [PDF]
recvfrom第 2个参数同样是char* 指针,但是可以直接接受WCHAR宽,真是生气,但生气是解决不了问题,赶快上网找找答案吧,从MSDN到GOOGLE,经过了小天研究真可是又火又高兴,火是很多人都是用自己编写来解决,可是如果那样以为简单东西又复杂了.高兴是吃过晚饭又继续寻找答案,最终在个国外网页中找到了答案,只用了3,4句就搞定了. 下面贴出来,以防再被这个问题所困扰人: //注意,这里LPCSTR是不可以替换成CHAR,否则下边会出现问题 [阅读全文] [PDF]
CString是一种很特殊的C++对象,它里面包含了三个值:一个指向某个数据缓冲区的指针、一个是该缓冲中有效的字符记数(它是不可存取的,是位于CString地址之下的一个隐藏区域)以及一个缓冲区长度。有效字符数的大小可以是从0到该缓冲最大长度值减1之间的任何数(因为字符串结尾有一个NULL字符)。字符记数和缓冲区长度被巧妙隐藏。 1.CString与float的转变 1)CString转变为float CStringstrContent; floatfNum; fNum=atof(strContent); 2)float转变为CString CString [阅读全文] [PDF]
CString是一种很特殊的C++对象,它里面包含了三个值:一个指向某个数据缓冲区的指针、一个是该缓冲中有效的字符记数(它是不可存取的,是位于CString地址之下的一个隐藏区域)以及一个缓冲区长度。有效字符数的大小可以是从0到该缓冲最大长度值减1之间的任何数(因为字符串结尾有一个NULL字符)。字符记数和缓冲区长度被巧妙隐藏。 (1)char*转换成CString   若将char*转换成CString,除了直接赋值外,还可使用CString::Format进行。例如: charchArray[]=\"Chartest\"; TCHAR*p=_T(\" [阅读全文] [PDF]
  这是出现在 microsoft.public.vc.mfc 新闻组中的一个小问题,我简单的提一下,这个问题是有个程序员需要往注册表中写入一个字符串,他写道:  我试着用 RegSetValueEx() 设置一个注册表键的值,但是它的结果总是令我困惑。当我用char[]声明一个变量时它能正常工作,但是当我用 CString 的时候,总是得到一些垃圾:\"ÝÝÝÝ...ÝÝÝÝÝÝ\"为了确认是不是我的 CString 数据出了 [阅读全文] [PDF]
  CString 的一个问题是它确实掩藏了一些低效率的东西。从另外一个方面讲,它也确实可以被实现得更加高效,你可能会说下面的代码: CString s = SomeCString1;s += SomeCString2;s += SomeCString3;s += \",\";s += SomeCString4; 比起下面的代码来,效率要低多了: char s[1024];lstrcpy(s, SomeString1);lstrcat(s, SomeString2);lstrcat(s, SomeString 3);lstrcat(s, \",\");lstrcat [阅读全文] [PDF]
  能体现出 CString 类型方便性特点的一个方面就字符串的连接,使用 CString 类型,你能很方便地连接两个字符串,正如下面的例子,,www. :CString gray(\"Gray\");CString cat(\"Cat\");CString graycat = gray + cat; 要比用下面的方法好得多: char gray[] = \"Gray\";char cat[] = \"Cat\";char * graycat = malloc(strlen(gray) + strlen(cat) + 1);strcpy(graycat, gra [阅读全文] [PDF]
  这是初学者使用 CString 时最常见的问题。有了 C++ 的帮助,很多问题你不需要深入的去考虑它,直接拿来用就行了,但是如果你不能深入了解它的运行机制,又会有很多问题让你迷惑,特别是有些看起来没有问题的代码,却偏偏不能正常工作。比如,你会奇怪为什么不能写向下面这样的代码呢,整理发布,www. :CString graycat = \"Gray\" + \"Cat\"; 或者这样: CString graycat(\"Gray\" + \"Cat\");   事实上,编译器将抱怨上面的这些尝试。为什么呢?因为针对CString 和 LPCTSTR数据类型 [阅读全文] [PDF]
  现在你有一个 char* 类型的数据,或者说一个字符串。怎么样创建 CString 对象呢?这里有一些例子:char * p = \"This is a test\"; 或者象下面这样更具有 Unicode 意识: TCHAR * p = _T(\"This is a test\") 或 LPTSTR p = _T(\"This is a test\"); 你可以使用下面任意一种写法: CString s = \"This is a test\"; // 8-bit _disibledevent= \"This is a test\";   这是 [阅读全文] [PDF]
 我们经常需要把一个 CString 的值传递给一个控件,比如,CTreeCtrl。MFC为我们提供了很多便利来重载这个操作,但是在大多数情况下,你使用“原始”形式的更新,因此需要将墨某个串指针存储到 TVINSERTITEMSTRUCT 结构的 TVITEM 成员中。如下:TVINSERTITEMSTRUCT tvi;CString s;// ... 为s赋一些值。tvi.item.pszText = s; // Compiler yells at you here// ... 填写tvi的其他域HTREEITEM ti = c_MyTree.InsertItem [阅读全文] [PDF]
  当我们使用 ActiveX 控件编程时,经常需要用到将某个值表示成 BSTR 类型。BSTR 是一种记数字符串,Intel平台上的宽字符串(Unicode),并且 可以包含嵌入的 NULL 字符。你可以调用 CString 对象的 AllocSysString 方法将 CString 转化成 BSTR:CString s;s = ... ; // whateverBSTR b = s.AllocSysString();   现在指针 b 指向的就是一个新分配的 BSTR 对象,该对象是 CString 的一个拷贝,包含终结 NULL字符。现在你可以将它传递给任 [阅读全文] [PDF]
  由于 BSTR 是记数 Unicode 字符串,你可以用标准转换方法来创建 8 位的 CString。实际上,这是 CString 内建的功能。在 CString 中 有特殊的构造函数可以把 ANSI 转化成 Unicode,也可以把Unicode 转化成 ANSI。你同样可以从 VARIANT 类型的变量中获得 BSTR 类型的字符串,VARIANT 类型是 由各种 COM 和 Automation (自动化)调用返回的类型。例如,在一个ANSI程序中:BSTR b;b = ...; // whateverCString s(b == NULL ? L\"\" [阅读全文] [PDF]
  事实上,我从来没有这么做过,因为我没有用 COM/OLE/ActiveX 编写过程序。但是我在microsoft.public.vc.mfc 新闻组上看到了 Robert Quirk 的一篇帖子谈到了这种转化,我觉得把他的文章包含在我的文章里是不太好的做法,所以在这里多做一些解释和演示。如果和他的文章有相孛的地方可能是我的疏忽,www. 。  VARIANT 类型经常用来给 COM 对象传递参数,或者接收从 COM 对象返回的值。你也能自己编写返回 VARIANT 类型的方法,函数返回什么类型依赖可能(并且常常)方法的输入参数(比如,在自动化操作中,依赖与你调用 [阅读全文] [PDF]
1 共15条 分1页