我有一种方法,它有IntPtr
作为参数。现在我有一个字符串“EXT101”,我需要作为参数传递给函数参数。以下是我的功能和我所尝试的,但不工作。如何将字符串传递到C中的整数指针#
unsafe private static extern int lineDevSpecific(IntPtr hLine);
string vline="Ext101";
int* hline=&vline;
如何通过hline
作为参数?
我有一种方法,它有IntPtr
作为参数。现在我有一个字符串“EXT101”,我需要作为参数传递给函数参数。以下是我的功能和我所尝试的,但不工作。如何将字符串传递到C中的整数指针#
unsafe private static extern int lineDevSpecific(IntPtr hLine);
string vline="Ext101";
int* hline=&vline;
如何通过hline
作为参数?
在猜测,我会说EXT101
是一个预处理器定义常量。没有简单的方法来获取它,因为编译后它不再作为名称存在。您需要查看头文件以查找要链接的任何库以查找值。
请注意,IntPtr不是指向int的指针。它是由带符号的本地整数表示的指针。也许你想要获得内存中该字符串的指针:
string vline="Ext101";
IntPtr hline = System.Runtime.InteropServices.Marshal.StringToHGlobalAnsi(vline);
lineDevSpecific(hline);
你打算实现什么? – Philipp 2013-03-04 08:46:45
@ Philipp Thnx先生为您的回应。我需要在函数 – vikas 2013-03-04 08:48:28
作为int *传递参数您可以使int *指向一个字符串? – Patashu 2013-03-04 08:48:44