我们做的项目里面的某些算法是C++写的,封装成DLL供C#代码调用。里面有这样一个函数:
CePred_Sin(char** Info,char * FName,char EvaluateResult[])
请问在C#中声明这个函数时参数怎么写啊,我对C++很不熟悉,望大家指点一下,谢谢!!!
这个DLL是别人写的,他在C++中是这样调用的:#include"C45_pred_sig_dll.h"
#include"stdio.h"
main()
{
char *Information[]={"1","0","4","2","5","5","2","AAA"};
char * FilePath="data\\C45";
char EvalResult[20];;
Pred_Sin(Information,FilePath,EvalResult);
printf("%s\n",EvalResult);
}char** Info貌似是一个二维的字符数组
char * FName为一个文件的有效路径
char EvaluateResult[]是返回值我自己在C#中是这样写的:[DllImport("CEC45_TRAIN.dll", EntryPoint = "CePred_Sin", CharSet = CharSet.None, CallingConvention = CallingConvention.StdCall)]
public static extern void CePred_Sin(ref string[] Info,string FName,ref string[] EvaluateResult);
希望高人帮助解决一下,注:最好不要用unsafe的C#代码=。=
CePred_Sin(char** Info,char * FName,char EvaluateResult[])
请问在C#中声明这个函数时参数怎么写啊,我对C++很不熟悉,望大家指点一下,谢谢!!!
这个DLL是别人写的,他在C++中是这样调用的:#include"C45_pred_sig_dll.h"
#include"stdio.h"
main()
{
char *Information[]={"1","0","4","2","5","5","2","AAA"};
char * FilePath="data\\C45";
char EvalResult[20];;
Pred_Sin(Information,FilePath,EvalResult);
printf("%s\n",EvalResult);
}char** Info貌似是一个二维的字符数组
char * FName为一个文件的有效路径
char EvaluateResult[]是返回值我自己在C#中是这样写的:[DllImport("CEC45_TRAIN.dll", EntryPoint = "CePred_Sin", CharSet = CharSet.None, CallingConvention = CallingConvention.StdCall)]
public static extern void CePred_Sin(ref string[] Info,string FName,ref string[] EvaluateResult);
希望高人帮助解决一下,注:最好不要用unsafe的C#代码=。=
解决方案 »
- C#如何把datagridview1的数据导入新的datagridview2
- C#如何读写excel
- vs2008如何去掉unicode编码
- 如何获取校内主页这样的网页代码
- axWindowsMediaPlayer如何重新加载播放列表?
- 怎么能让textbox里面只能输入数据?
- 各位老大,我问个问题啊
- 命名空间 System 不是比System.Data 的范围要大吗?用了using System后, 为什么还要用using System.Data
- 关于软件安装的问题~!!!
- 非静态的字段、方法或属性“mns.Data.SetCon()”要求对象引用
- int long 的转换
- 满分求解一个数据转换的题 急啊,在线等
char *Information[]一维的字符型指针数组
char *FilePath字符型指针变量!C++和C语言是相通的!
[DllImport("CEC45_TRAIN.dll", EntryPoint = "CePred_Sin", CharSet = CharSet.None, CallingConvention = CallingConvention.StdCall)]
public static extern void CePred_Sin(string[] Info,string FName,StringBuilder EvaluateResult); string Information[]={"1","0","4","2","5","5","2","AAA"};
string FilePath="data\\C45";
StringBuilder EvalResult=new StringBuilder (20);
Pred_Sin(Information,FilePath,EvalResult);
MessageBox.Show(EvalResult.ToString());