这是自己开发一个简易的监控系统时的所用到的知识点。

第一个问题

在网络传输数据时可以传int,float,doule,char,等包括结构体类型但是除类类型外。

在调试中要常用merry寄存器。

应用事例:在send函数中要用到const char FAR * 类型。它的原形

int send (

SOCKET s,

const char FAR * buf,

int len,

int flags

);

这个类型我们可以用一个结构体的事例来代替。

第二个问题

用strlen函数时要注意。它遇到\0就结束。所以注意若求结构体,公用体等类型时用sizeof函数能得到具体大小,若所求字段不包含\0可以用strlen函数。这个\0表示数字0 。

第三个问题

怎样把一个cstring类型转换为string类型。解决方法:用一个用中间变量。首先定义一个char*变量。将cstring转换为char*型再将char*转换为string类型。如ctring cstr("sfsfsf");char *ch = (LPSTR)(LPCTSTR)cst;string str (ch);

第四个问题

把char 数组付个string类时。再将新的一个string类付这个string类却无法付值。原因是。是数组过大,没有结束位使的string类无法得到新的string类的值。解决办法是去掉数组中不存在的空间。

例如:string filename = "\\config.xml";

string fileNamePath = "";

//获取文件路径

int k=0,i1=0;

HMODULE hModle = GetModuleHandle("ServerControlInfo.exe");

char modelPath[256],filePath[256];

int modelLength = GetModuleFileName(hModle,modelPath,256);

if (!hModle)

{

AfxMessageBox("没有服务器需要运行的文件,请确认!");

return;

}

if (modelLength)

{

for (int i = modelLength ; i >= 0 ; i-- )

{

if (modelPath[i] == '\\')

{

k = i;

break;

}

}

}

for (int i = 0 ; i < k ; i++)

{

if (modelPath[i] == '\\')

{

filePath[i1] = '\\';

i1++;

filePath[i1] = modelPath[i];

}

else

{

filePath[i1] = modelPath[i];

i1++;

}

}

filePath[i1] = 0; //////注意这个地方。这就是问题的关键所在不付结束位。那么后边的filename永远也付不了。

fileNamePath = filePath;//这个地方把数组转为了string类

fileNamePath += filename;

最新文章

  1. windows svn 上传后 自动部署 到web目录下
  2. 模版(template)
  3. rhino(犀牛) --- color control
  4. SQL,LINQ,Lambda语法对照图(转载)
  5. JavaScript 闯关记
  6. HTML5与移动端Web
  7. ZooKeeper(3.4.5) 使用Curator监听事件
  8. C#简单应用spring的例子
  9. 2014-11-9------- 设有一数据库,包括四个表:学生表(Student)、课程表(Course)、成绩表(Score)以及教师信息表(Teacher)。
  10. Django_验证码
  11. Flask(python)异步(ajax)返回json格式数据
  12. Split CSV/TXT file
  13. 访问iis 出现500.19错误
  14. python学习笔记(11)--数据组织的维度
  15. React 表单refs
  16. 后台返回json字符串 页面js报错 Uncaught SyntaxError: Unexpected identifier
  17. react高阶组件的理解
  18. [CQOI2009]跳舞
  19. 20145216《网络对抗》逆向及BOF基础实践
  20. atom / vscode (配置c++环境流程)

热门文章

  1. DPDK之什么是imissed、ierrors、rx_nombuf
  2. leetcode题库练习_两数之和
  3. Java基础之函数
  4. spring学习(二)spring容器搭建与应用
  5. .Net微服务实战之CI/CD
  6. dubbo泛化调用 小demo
  7. Django学习路36_函数参数 反向解析 修改404 页面
  8. 线程_gevent实现多个视频下载及并发下载
  9. 11-19 hashlib模块
  10. zabbix监控配置一般流程