不能,為了系統(tǒng)的可移植性,C語言系統(tǒng)函數(shù)是無法更改的,只能定義函數(shù)庫沒有的函數(shù)。
目前創(chuàng)新互聯(lián)已為成百上千家的企業(yè)提供了網(wǎng)站建設(shè)、域名、雅安服務(wù)器托管、網(wǎng)站托管、服務(wù)器租用、企業(yè)網(wǎng)站設(shè)計、港閘網(wǎng)站維護(hù)等服務(wù),公司將堅持客戶導(dǎo)向、應(yīng)用為本的策略,正道將秉承"和諧、參與、激情"的文化,與客戶和合作伙伴齊心協(xié)力一起成長,共同發(fā)展。
不同的編譯器有不同的函數(shù)庫
所有編譯器都有標(biāo)準(zhǔn)輸入輸出函數(shù)庫stdio.h,還有conio.h,還有標(biāo)準(zhǔn)定義stddef.h
還有字符串處理函數(shù)string.h,數(shù)學(xué)函數(shù)庫math.h等
windos操作系統(tǒng)中的編譯器一般都有編譯win窗口程序的win.h和windows.h
及一些名稱包含有"windows"的頭文件
dos操作系統(tǒng)中的的編譯器(如TC)中包含dos處理的頭文件dos.h,
bios.h BIOS調(diào)用頭文件,graphics.h圖像處理頭文件等
1、C語言中沒有提供字符串替換函數(shù),網(wǎng)上能找到的類似函數(shù)也只是能替換一個,不能替換全部,工作中卻常常要用到這個功能,故實(shí)現(xiàn)一個函數(shù)。該函數(shù)所使用到的相關(guān)函數(shù)均是自己實(shí)現(xiàn),沒有調(diào)用庫函數(shù)。
2、函數(shù)代碼如下:
/*descript:replace?str,返回一個替換以后的字符串,用完之后要free()
success:return?1
error:return?0
BUG:"select?*?from?tab?where?id=':a'?and?name?=':aa'",this?is?not?support,this?function?is?just?simple?str_replace?,not?support?all?SQL?language
*/
char?*replacestr(char?*strbuf,?char?*sstr,?char?*dstr)
{???????char?*p,*p1;
int?len;
if?((strbuf?==?NULL)||(sstr?==?NULL)||(dstr?==?NULL))
return?NULL;
p?=?strstr(strbuf,?sstr);???????//返回字符串第一次出現(xiàn)的地址,否則返回NULL
if?(p?==?NULL)??/*not?found*/
return?NULL;
len?=?strlen(strbuf)?+?strlen(dstr)?-?strlen(sstr);
p1?=?malloc(len);
bzero(p1,?len);
strncpy(p1,?strbuf,?p-strbuf);
strcat(p1,?dstr);
p?+=?strlen(sstr);
strcat(p1,?p);
return?p1;
}