strcpy和strcat為何寫的如此簡單?

2021-04-01 01:46:02 字數 516 閱讀 6701

//

char * strcat (char * dst, char * src)

char * strcpy (char * dst, char * src)

這是在ms的vc7裡面的strcat和strcpy的兩段**。

可謂直截了當,一點都沒有拖泥帶水!對於引數沒有做任何檢驗!

那麼這樣做到底為什麼呢?效率吧!

這樣兩個函式的利用率應該是非常高的。假如每次呼叫都唧唧歪歪一番,豈不是很浪費!

同時,就要求我們在使用這兩個函式時非常小心!否則,會有問題。

那麼,我們自己定義的函式對於安全性和效率該如何權衡呢?在vc或者其它的c++庫裡面這樣定義strcpy是有其道理的,因為strcpy的使用者是偉大的c++程式設計師,故無需多言,效率優先(儘管很多偉大的cpper沒有正確使用他們)。

最後,俺認為:當權衡乙個函式的安全性和效率時應該根據其本身的使命來定奪。而不能說什麼安全第

一、效率第一之類。

今天就是這樣,有事下次再講。幼稚了,別笑俺!要不討論討論……

strcpy函式和strcat函式

將兩個char型別連線。char d 20 goldenglobal char s view strcat d,s 結果放在d中 printf s d 輸出 d 為 goldenglobalview 中間無空格 d和s所指記憶體區域不可以重疊且d必須有足夠的空間來容納s的字串。返回指向d的 指標。原...

strcpy函式和strcat函式

strcat函式 將兩個char型別連線。char d 20 goldenglobal char s view strcat d,s 結果放在d中 printf s d 輸出 d 為 goldenglobalview 中間無空格 d和s所指記憶體區域不可以重疊且d必須有足夠的空間來容納s的字串。返回...

c庫函式strcpy和strcat函式用法

描述 c 庫函式char strcpy char dest,const char src 把src所指向的字串複製到dest。宣告 下面是 strcpy 函式的宣告。char strcpy char dest,const char src 引數 返回值 該函式返回乙個指向最終的目標字串 dest 的...