工作总结(一)

单引号与双引号的区别:

"abc"这样表示一个字符串,里面有三个元素,'a','b','c',然后还有一个字符串截至符'\0'。

单引号表示一个单个的字符,比如说字母a,在程序中以'a'表示。单引号里面不能有多个字符,比如char a='ab',这是错误的。

总结:就是一个字符与多个字符的区别。

 

c#中传递字符串到c++dll库中

c#中这样写:

string str;
StringBuilder strb = new StringBuilder(str);
c++库名.c++函数名(strb);

c++中这样写:

void c++函数名(char* input)
{
    //具体内容
    std::string str(input);
}

c++库返回char数组到c#:

c++中这样写:

char* 函数名()
{
    char charArrow[50];
    return charArrow;

}

c#中这么写:

[DllImport("库名.dll",  CallingConvention = CallingConvention.Cdecl, CharSet = CharSet.Ansi)]
public extern static IntPtr 函数名();

另外在一个函数中return一个指针,如果这个指针指向的是一个全局变量,这个函数的返回值才有意义。

 

你可能感兴趣的:(工作总结)