PB 调用别的语言函数,只能生命全局或者局部dll,然后调用函数,你应该编译为dll后让pb调用
至于你说的定义类型问题,pb对底层支持的不是很好,但是基本按键响应有专门的窗体事件可以调用,pb没有字符变量,能够直接定义字符串或者数组
比如你的消息代码是'0xabc',在pb里面简单定义一个 string a就行了
直接赋值a = '0xabc'比C语言简单多了
还有,pb没有指针、堆栈之类的概念,你就用word的概念处理,一段话或者几个字,直接处理,不需要那些复杂的循环、链表之类的
需要替换、查找、分割、都有对应的函数,和用word很像
function generateCode($length = 6) {
// 字符集,可任意添加你需要的字符
$chars = '0123456789';
$randnumber = '';
for ($i = 0; $i < $length; $i++) {
// 取字符数组 $chars 的任意元素
// $randnumber = substr($chars, mt_rand(0, strlen($chars) - 1), 1);
$randnumber = $chars[mt_rand(0, strlen($chars) - 1)];
}
return $randnumber;
}
直接调用这个函数,默认生成6位随机数,也可以自己传参数生成四位之类的,如 :generateCode(4)
messagebox('错误','无法取得程序运行路径')haltelseif ll_apphandler<0 then//编译模式
ls_apppath=ls_appname
ls_strtmp=reverse(ls_apppath)
li_pos=pos(ls_strtmp,'\',1)
ls_strtmp=mid(ls_strtmp,li_pos+1)
ls_apppath=reverse(ls_strtmp)
else //PB环境下运行
ls_apppath='D:\ScaleWinInterface'//据实际情况改变
ls_appname=ls_apppath+'\mainexe'//同上lb_c=falseend ifend if其中声明PUBLIC FUNCTION uLong GetModuleFileName(ulong hModule,ref string lpFileName,ulong nSize) LIBRARY "kernel32dll" ALIAS FOR "GetModuleFileNameA"
这样ls_apppath即为执行程序的路径。
ls_appname为路径(包括文件名)
以上是得到当前运行程序的路径,如果要得到其他文件的路径,如果知道这个文件名,也就知道它的路径了,不必再找,如果想查找符合某个文件名的所有文件的路径,就要做目录遍历了。这个可以到网站找例子。
以上就是关于PB 调用C++函数全部的内容,包括:PB 调用C++函数、pb中产生随机数的函数是什么怎么用、PB怎样获取文件路径用什么函数谢谢!!等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)