2
從託管的C++函數我想調用一個非託管函數,它需要一個'const char *'作爲參數。我需要一個pin_ptr來傳遞一個文字字符串嗎?
a)和b)正確嗎?對於b),我需要pin_ptr'你好'嗎?那麼a)呢?謝謝。
一個) myFunction("hello");
B)
char hello[10] ;
strcpy(hello, "hello");
myFunction(hello);
從託管的C++函數我想調用一個非託管函數,它需要一個'const char *'作爲參數。我需要一個pin_ptr來傳遞一個文字字符串嗎?
a)和b)正確嗎?對於b),我需要pin_ptr'你好'嗎?那麼a)呢?謝謝。
一個) myFunction("hello");
B)
char hello[10] ;
strcpy(hello, "hello");
myFunction(hello);
兩者都是優良。你不需要在B額外strcpy
)雖然只是做:
char hello[] = "hello";
myFunction(hello);
現在變成幾乎相同的)。
謝謝。爲什麼不需要固定它們?因爲他們在堆棧中? – 2010-08-05 15:07:47
因爲它們不是動態分配的。 a)可能位於數據段的只讀部分,b)位於堆棧中。 – 2010-08-05 15:14:12