2010-06-06 85 views
1

我讀的是memcpy從源位置獲取字節數並將其添加到目標位置。這是否意味着memcpy可能完全改變數據類型?memcpy params必須是相同的類型?

memcpy(DoubleOne, CharTwo, strlen(CharTwo)); 

考慮到兩個值仍爲空。

+3

它不會將來自源位置的字節「添加」到目的地。它_copies_字節...並且,不,它不關心那些字節實際對應的數據類型。 – 2010-06-06 17:16:58

回答

3

是的,他們不需要。

int test = 3; 
char dest[sizeof(int)]; 

memcpy(&dest[0], &test, sizeof(int)); 

是否有效c(++)。

5

是的,memcpy不關心類型。 (它無論如何都將其參數轉換爲無效指針)

它不會「改變數據類型」,因爲它只是將char數據寫入double數組(對於您的情況),並希望它有意義。

相關問題