迷你5207专属论坛

注册

 

发新话题 回复该主题

[魅族M8] 关于线程参数的问题 [复制链接]

发表者
大家好,遇到了一个关于线程参数的问题
我定义了一个线程,如下
DWORD WINAPI Threadshow (LPVOID pArg)
{
CMzString text=(CMzString*)pArg;
HWND m_hWnd;
MzMessageBoxEx(m_hWnd,text,L"结果");
}

调用的时候如下
CMzString xixi=L"嘻嘻";
HANDLE hThread = CreateThread(NULL, 0, ::Threadshow,&xixi, 0, 0);

调试的时候程序运行到
CMzString text=(CMzString*)pArg;
程序就中断了  
请问是怎么回事??
分享 转发
TOP
沙发

不能这么传参数,直接传字符串的指针过去
让一切都对着我微笑
TOP
凳子

回复 2楼mini188的帖子

是createThread的参数错了吗??能告诉我应该怎么传吗 ?弄了好久还是不知道怎么做
我只是想把线程外的一个字符串传入到线程内的方法里做为该方法的参数
TOP
地板

字符串直接用:
CMzString xixi=L"嘻嘻";
HANDLE hThread = CreateThread(NULL, 0, ::Threadshow,&xixi.C_Str(), 0, 0);
相信与不相信都是矛盾的.  5207宣!欢迎您来到点滴论坛
TOP
5#

知道怎么回事了   指针要先new下
参考百度知道的一个问题的
http://zhidao.baidu.com/question/229537791.html?an=0&si=1
非常感谢楼上的两位
最近要考试了     不得不停止编写    
等考试过后再继续吧
TOP
6#

回复 5楼loveyou13的帖子

对于指针不熟悉的新手来说,还是要放下心来学习基础。我在初期写M8的程序就遇到了指针应用不好的问题,会引起很多的异常情况。

建议找本C/C++的书多看一下(论坛中就有本《C++ Primer》),然后结合动手才能体会到。
相信与不相信都是矛盾的.  5207宣!欢迎您来到点滴论坛
TOP
发新话题 回复该主题