可能重複:
How to find the sizeof(a pointer pointing to an array)C/C++編譯器如何自動推斷某些C函數調用的數組長度?
在第一次調用到strcpy_s編譯器可以推斷出該陣列的長度,但在第二次調用的陣列長度已在被傳遞
。TCHAR szTemp[512];
::strcpy_s(szTemp, "a long text message");
TCHAR* pszTemp = new TCHAR[512];
::strcpy_s(pszTemp, 512, "a long text message");
delete []pszTemp;
編譯器如何做到這一點?這是微軟唯一的擴展嗎?另外,我怎麼能聲明我的方法來利用參數推導?
@BoPersson:這個問題不是這個問題的重複,因爲這個問題詢問如何在某些情況下推導大小,而另一個則不是。 –
@Eric - 這是關於數組和指針的區別。同樣的問題。 –
@BoPersson:不,它不是「全部」關於數組和指針的區別。它詢問關於推算規模的問題,而這個問題在另一個問題中沒有被問到,除了排名第四的答案沒有討論這個問題,這並沒有解釋它的例子。 –