能力值:
( LV2,RANK:10 )
2 楼
#include<stdio.h>
#include<string.h>
int main()
{
char pcStr[]="ABCDEFGH";
int i;
char pcStr1[3],
pcStr2[3],
pcStr3[3],
pcStr4[3];
i=0;
memcpy(pcStr1, &pcStr[i], 2);
pcStr1[2]=0;
i+=2;
memcpy(pcStr2, &pcStr[i], 2);
pcStr2[2]=0;
i+=2;
memcpy(pcStr3, &pcStr[i], 2);
pcStr3[2]=0;
i+=2;
memcpy(pcStr4, &pcStr[i], 2);
pcStr4[2]=0;
i+=2;
printf("%s\n%s\n%s\n%s\n", pcStr1, pcStr2, pcStr3, pcStr4);
return 0;
}
能力值:
( LV2,RANK:10 )
3 楼
CString 是C++,而且是MFC独有的。。。
能力值:
( LV2,RANK:10 )
4 楼
ddk是什么,我还真不知道。。。。求教。
能力值:
( LV2,RANK:10 )
5 楼
一个简单的内存copy就行了,要在内核编程中使用CString,绝对不行的
能力值:
( LV12,RANK:230 )
6 楼
应该说是C++的吧,而不是MFC的,我经常在SDK中使用CString类。貌似CString是ATL和MFC共享类,MFC早就该淘汰了
能力值:
( LV2,RANK:10 )
7 楼
[QUOTE=牧风;1109954]#include<stdio.h>
#include<string.h>
int main()
{
char pcStr[]="ABCDEFGH";
int i;
char pcStr1[3],
pcStr2[3],
pcStr3[3],
pcStr4[3];
i=0;
...[/QUOTE]
如果我要把这4个得到的赋值给test1[4]这个数组呢?
如test1[0]=0xAB,test1[1]=0xCD......
该怎么表示呢?
能力值:
( LV2,RANK:10 )
8 楼
[QUOTE=哒达哒达;1110111]如果我要把这4个得到的赋值给test1[4]这个数组呢?
如test1[0]=0xAB,test1[1]=0xCD......
该怎么表示呢?[/QUOTE]
test1是什么类型的数组呢?
看你的描述,似乎是想把,字符型的值,传给数值型的?
再细一点吧。
能力值:
( LV2,RANK:10 )
9 楼
使用CString,必须要包含Afx.h而标准C++中是没有这个东西的,倒是有一个string类。。。
再看MSDN中关于CString 的说明:
Visual C++ supplies several ways to work with character-string data. These include MFC’s CString class, functions in the run-time library, and Win32 API functions.
另外
MFC早就该淘汰了,这个不好说。。。现在用的还非常多。主要是开始学的时候太绕了些。。。
能力值:
( LV2,RANK:10 )
10 楼
test1[4]的定义是 BYTE test1[4],字节型的吧?我是要用rltcopymemory写入数据的,
代码 rltcopymemory(address,test1,4)
求指教喔
能力值:
( LV3,RANK:30 )
11 楼
ddk就是写内核驱动时候的东西,函数库吧算是
能力值:
( LV2,RANK:10 )
12 楼
int nv;
CString s = str1.Mid(0, 2);
StrToIntEx(s.LockBuffer(), STIF_SUPPORT_HEX, &nv);
能力值:
( LV2,RANK:10 )
13 楼
看来,你是想把字符型的16进制,转换成数值型的了?
楼上的方法可以。
补充一个更通用的:
char *pcStr="AB";
int iab;
sscanf(pcstr, "%x", &iab);
printf("%x", pcstr);