2013-03-04 78 views
0

我有一种方法,它有IntPtr作为参数。现在我有一个字符串“EXT101”,我需要作为参数传递给函数参数。以下是我的功能和我所尝试的,但不工作。如何将字符串传递到C中的整数指针#

unsafe private static extern int lineDevSpecific(IntPtr hLine); 
string vline="Ext101"; 
int* hline=&vline; 

如何通过hline作为参数?

+2

你打算实现什么? – Philipp 2013-03-04 08:46:45

+0

@ Philipp Thnx先生为您的回应。我需要在函数 – vikas 2013-03-04 08:48:28

+0

作为int *传递参数您可以使int *指向一个字符串? – Patashu 2013-03-04 08:48:44

回答

0

在猜测,我会说EXT101是一个预处理器定义常量。没有简单的方法来获取它,因为编译后它不再作为名称存在。您需要查看头文件以查找要链接的任何库以查找值。

0

请注意,IntPtr不是指向int的指针。它是由带符号的本地整数表示的指针。也许你想要获得内存中该字符串的指针:

string vline="Ext101"; 
IntPtr hline = System.Runtime.InteropServices.Marshal.StringToHGlobalAnsi(vline); 
lineDevSpecific(hline); 
相关问题