寫乙個memcpy 函式你能拿幾分?

2021-07-08 17:52:25 字數 409 閱讀 1693

不考慮效能的話,memcpy()在c99編譯器下可以寫為:

void *memcpy(void *restrict dest, const void *restrict src, size_t n)

這裡有幾個得分點:

這裡的幾個關鍵點解釋如下:

src指標前面要加const,暗示src是輸入引數;

src和dest是非重疊記憶體,restrict關鍵字暗示編譯器可以優化記憶體訪問的編譯;

斷言(assert) src和dest非空,拷貝的源頭和目的地非重疊,程式設計師要理解出錯處理和斷言的區別;

返回void *。

實現乙個Memcpy函式

需要考慮記憶體重疊的情況 includeusing namespace std void memcpy void dst,const void src,size t len void ret dst if dst src else return ret int main 那麼為什麼還要考慮重寫mem...

寫乙個函式,能獲取檔案字尾

1.substr substr start,length 表示從 start 位置開始,擷取 length 長度的字串。var src images off 1.png alert src.substr 7,3 彈出值為 off 2.substring substring start,end 表示從...

你乙個月掙幾「phone」

一直想買個iphone,但是一直沒機會,過去是買不起,一台iphone比我乙個月的工資還高,現在是不敢隨便花了,家裡有事急用,把我一年的收入都拿去了,所以一直沒機會出手。今天路過iphone專賣店,一台iphone4大概需要4500元,突然想到乙個有趣的問題,如果一phone 4500元,那麼你乙個...