?? linux 常用c函數(中文版)-內存控制及字符串操作.htm
字號:
</FONT></TD></TR>
<TR>
<TD vAlign=top width=80>
<DIV align=right><FONT face=宋體 size=2>相關函數 </FONT></DIV></TD>
<TD vAlign=top><FONT face=宋體
size=2>bcmp,memcmp,strcmp,strcoll,strncmp<BR></FONT></TD></TR>
<TR>
<TD vAlign=top width=80>
<DIV align=right><FONT face=宋體 size=2>表頭文件 </FONT></DIV></TD>
<TD vAlign=top><FONT face=宋體
size=2>#include<string.h><BR></FONT></TD></TR>
<TR>
<TD vAlign=top width=80>
<DIV align=right><FONT face=宋體 size=2>定義函數 </FONT></DIV></TD>
<TD vAlign=top><FONT face=宋體 size=2>int strcasecmp (const char *s1, const
char *s2);<BR></FONT></TD></TR>
<TR>
<TD vAlign=top width=80>
<DIV align=right><FONT face=宋體 size=2>函數說明 </FONT></DIV></TD>
<TD vAlign=top><FONT face=宋體
size=2>strcasecmp()用來比較參數s1和s2字符串,比較時會自動忽略大小寫的差異。<BR></FONT></TD></TR>
<TR>
<TD vAlign=top width=80>
<DIV align=right><FONT face=宋體 size=2>返回值 </FONT></DIV></TD>
<TD vAlign=top><FONT face=宋體 size=2>若參數s1和s2字符串相同則返回0。s1長度大于s2長度則返回大于0
的值,s1 長度若小于s2 長度則返回小于0的值。<BR></FONT></TD></TR>
<TR>
<TD vAlign=top width=80>
<DIV align=right><FONT face=宋體 size=2>范例 </FONT></DIV></TD>
<TD vAlign=top><FONT face=宋體 size=2>#include
<string.h><BR>main()<BR>{<BR>char *a="aBcDeF";<BR>char
*b="AbCdEf";<BR>if(!strcasecmp(a,b))<BR>printf("%s=%s\n",a,b);<BR>}<BR></FONT></TD></TR>
<TR>
<TD vAlign=top width=80>
<DIV align=right><FONT face=宋體 size=2>執行 </FONT></DIV></TD>
<TD vAlign=top><FONT face=宋體 size=2>aBcDeF=AbCdEf<BR></FONT></TD></TR>
<TR>
<TD vAlign=top width=80>
<DIV align=right><BR><FONT face=宋體 size=2><A
name=linuxc53></A></FONT></DIV></TD></TR>
<TR>
<TD vAlign=top width=80>
<DIV align=right><FONT face=宋體 size=2><BR></FONT></DIV></TD>
<TD vAlign=top><FONT face=宋體 size=2><BR>strcat(連接兩字符串) </FONT></TD></TR>
<TR>
<TD vAlign=top width=80>
<DIV align=right><FONT face=宋體 size=2>相關函數 </FONT></DIV></TD>
<TD vAlign=top><FONT face=宋體
size=2>bcopy,memccpy,memcpy,strcpy,strncpy<BR></FONT></TD></TR>
<TR>
<TD vAlign=top width=80>
<DIV align=right><FONT face=宋體 size=2>表頭文件 </FONT></DIV></TD>
<TD vAlign=top><FONT face=宋體 size=2>#include
<string.h><BR></FONT></TD></TR>
<TR>
<TD vAlign=top width=80>
<DIV align=right><FONT face=宋體 size=2>定義函數 </FONT></DIV></TD>
<TD vAlign=top><FONT face=宋體 size=2>char *strcat (char *dest,const char
*src);<BR></FONT></TD></TR>
<TR>
<TD vAlign=top width=80>
<DIV align=right><FONT face=宋體 size=2>函數說明 </FONT></DIV></TD>
<TD vAlign=top><FONT face=宋體
size=2>strcat()會將參數src字符串拷貝到參數dest所指的字符串尾。第一個參數dest要有足夠的空間來容納要拷貝的字符串。<BR></FONT></TD></TR>
<TR>
<TD vAlign=top width=80>
<DIV align=right><FONT face=宋體 size=2>返回值 </FONT></DIV></TD>
<TD vAlign=top><FONT face=宋體 size=2>返回參數dest的字符串起始地址<BR></FONT></TD></TR>
<TR>
<TD vAlign=top width=80>
<DIV align=right><FONT face=宋體 size=2>范例 </FONT></DIV></TD>
<TD vAlign=top><FONT face=宋體 size=2>#include
<string.h.><BR>main()<BR>{<BR>char a[30]="string(1)";<BR>char
b[]="string(2)";<BR>printf("before strcat() : %s\n",a);<BR>printf("after
strcat() : %s\n",strcat(a,b));<BR>}<BR></FONT></TD></TR>
<TR>
<TD vAlign=top width=80>
<DIV align=right><FONT face=宋體 size=2>執行 </FONT></DIV></TD>
<TD vAlign=top><FONT face=宋體 size=2>before strcat () : string(1)<BR>after
strcat () : string(1)string(2)<BR></FONT></TD></TR>
<TR>
<TD vAlign=top width=80>
<DIV align=right><BR><FONT face=宋體 size=2><A
name=linuxc54></A></FONT></DIV></TD></TR>
<TR>
<TD vAlign=top width=80>
<DIV align=right><FONT face=宋體 size=2><BR></FONT></DIV></TD>
<TD vAlign=top><FONT face=宋體 size=2><BR>strchr(查找字符串中第一個出現的指定字符)
</FONT></TD></TR>
<TR>
<TD vAlign=top width=80>
<DIV align=right><FONT face=宋體 size=2>相關函數 </FONT></DIV></TD>
<TD vAlign=top><FONT face=宋體
size=2>index,memchr,rinex,strbrk,strsep,strspn,strstr,strtok<BR></FONT></TD></TR>
<TR>
<TD vAlign=top width=80>
<DIV align=right><FONT face=宋體 size=2>表頭文件 </FONT></DIV></TD>
<TD vAlign=top><FONT face=宋體
size=2>#include<string.h><BR></FONT></TD></TR>
<TR>
<TD vAlign=top width=80>
<DIV align=right><FONT face=宋體 size=2>定義函數 </FONT></DIV></TD>
<TD vAlign=top><FONT face=宋體 size=2>char * strchr (const char *s,int
c);<BR></FONT></TD></TR>
<TR>
<TD vAlign=top width=80>
<DIV align=right><FONT face=宋體 size=2>函數說明 </FONT></DIV></TD>
<TD vAlign=top><FONT face=宋體
size=2>strchr()用來找出參數s字符串中第一個出現的參數c地址,然后將該字符出現的地址返回。<BR></FONT></TD></TR>
<TR>
<TD vAlign=top width=80>
<DIV align=right><FONT face=宋體 size=2>返回值 </FONT></DIV></TD>
<TD vAlign=top><FONT face=宋體
size=2>如果找到指定的字符則返回該字符所在地址,否則返回0。<BR></FONT></TD></TR>
<TR>
<TD vAlign=top width=80>
<DIV align=right><FONT face=宋體 size=2>范例 </FONT></DIV></TD>
<TD vAlign=top><FONT face=宋體
size=2>#include<string.h><BR>main()<BR>{<BR>char
*s=0123456789012345678901234567890”;<BR>char
*p;<BR>p=strchr(s,'5');<BR>printf("%s\n",p);<BR>}<BR></FONT></TD></TR>
<TR>
<TD vAlign=top width=80>
<DIV align=right><FONT face=宋體 size=2>執行 </FONT></DIV></TD>
<TD vAlign=top><FONT face=宋體 size=2>5.68E+25<BR></FONT></TD></TR>
<TR>
<TD vAlign=top width=80>
<DIV align=right><BR><FONT face=宋體 size=2><A
name=linuxc55></A></FONT></DIV></TD></TR>
<TR>
<TD vAlign=top width=80>
<DIV align=right><FONT face=宋體 size=2><BR></FONT></DIV></TD>
<TD vAlign=top><FONT face=宋體 size=2><BR>strcmp(比較字符串) </FONT></TD></TR>
<TR>
<TD vAlign=top width=80>
<DIV align=right><FONT face=宋體 size=2>相關函數 </FONT></DIV></TD>
<TD vAlign=top><FONT face=宋體
size=2>bcmp,memcmp,strcasecmp,strncasecmp,strcoll<BR></FONT></TD></TR>
<TR>
<TD vAlign=top width=80>
<DIV align=right><FONT face=宋體 size=2>表頭文件 </FONT></DIV></TD>
<TD vAlign=top><FONT face=宋體
size=2>#include<string.h><BR></FONT></TD></TR>
<TR>
<TD vAlign=top width=80>
<DIV align=right><FONT face=宋體 size=2>定義函數 </FONT></DIV></TD>
<TD vAlign=top><FONT face=宋體 size=2>int strcmp(const char *s1,const char
*s2);<BR></FONT></TD></TR>
<TR>
<TD vAlign=top width=80>
<DIV align=right><FONT face=宋體 size=2>函數說明 </FONT></DIV></TD>
<TD vAlign=top><FONT face=宋體 size=2>strcmp()用來比較參數s1和s2字符串。字符串大小的比較是以ASCII
碼表上的順序來決定,此順序亦為字符的值。strcmp()首先將s1第一個字符值減去s2第一個字符值,若差值為0則再繼續比較下個字符,若差值不為0則將差值返回。例如字符串"Ac"和"ba"比較則會返回字符"A"(65)和'b'(98)的差值(-33)。<BR></FONT></TD></TR>
<TR>
<TD vAlign=top width=80>
<DIV align=right><FONT face=宋體 size=2>返回值 </FONT></DIV></TD>
<TD vAlign=top><FONT face=宋體
size=2>若參數s1和s2字符串相同則返回0。s1若大于s2則返回大于0的值。s1若小于s2則返回小于0
的值。<BR></FONT></TD></TR>
<TR>
<TD vAlign=top width=80>
<DIV align=right><FONT face=宋體 size=2>范例 </FONT></DIV></TD>
<TD vAlign=top><FONT face=宋體
size=2>#include<string.h><BR>main()<BR>{<BR>char
*a="aBcDeF";<BR>char *b="AbCdEf";<BR>char *c="aacdef";<BR>char
*d="aBcDeF";<BR>printf("strcmp(a,b) :
%d\n",strcmp(a,b));<BR>printf("strcmp(a,c) :
%d\n",strcmp(a,c));<BR>printf("strcmp(a,d) :
%d\n",strcmp(a,d));<BR>}<BR></FONT></TD></TR>
<TR>
<TD vAlign=top width=80>
<DIV align=right><FONT face=宋體 size=2>執行 </FONT></DIV></TD>
<TD vAlign=top><FONT face=宋體 size=2>strcmp(a,b) : 32<BR>strcmp(a,c)
:-31<BR>strcmp(a,d) : 0<BR></FONT></TD></TR>
<TR>
<TD vAlign=top width=80>
<DIV align=right><BR><FONT face=宋體 size=2><A
name=linuxc56></A></FONT></DIV></TD></TR>
<TR>
<TD vAlign=top width=80>
<DIV align=right><FONT face=宋體 size=2><BR></FONT></DIV></TD>
<TD vAlign=top><FONT face=宋體 size=2><BR>strcoll(采用目前區域的字符排列次序來比較字符串)
</FONT></TD></TR>
<TR>
<TD vAlign=top width=80>
<DIV align=right><FONT face=宋體 size=2>相關函數 </FONT></DIV></TD>
<TD vAlign=top><FONT face=宋體
size=2>strcmp,bcmp,memcmp,strcasecmp,strncasecmp<BR></FONT></TD></TR>
<TR>
<TD vAlign=top width=80>
<DIV align=right><FONT face=宋體 size=2>表頭文件 </FONT></DIV></TD>
<TD vAlign=top><FONT face=宋體
size=2>#include<string.h><BR></FONT></TD></TR>
<TR>
<TD vAlign=top width=80>
<DIV align=right><FONT face=宋體 size=2>定義函數 </FONT></DIV></TD>
<TD vAlign=top><FONT face=宋體 size=2>int strcoll( const char *s1, const
char *s2);<BR></FONT></TD></TR>
<TR>
<TD vAlign=top width=80>
<DIV align=right><FONT face=宋體 size=2>函數說明 </FONT></DIV></TD>
<TD vAlign=top><FONT face=宋體
size=2>strcoll()會依環境變量LC_COLLATE所指定的文字排列次序來比較s1和s2 字符串。<BR></FONT></TD></TR>
<TR>
<TD vAlign=top width=80>
<DIV align=right><FONT face=宋體 size=2>返回值 </FONT></DIV></TD>
<TD vAlign=top><FONT face=宋體
size=2>若參數s1和s2字符串相同則返回0。s1若大于s2則返回大于0的值。s1若小于s2則返回小于0
的值。<BR></FONT></TD></TR>
<TR>
<TD vAlign=top width=80>
<DIV align=right><FONT face=宋體 size=2>附加說明 </FONT></DIV></TD>
<TD vAlign=top><FONT face=宋體
size=2>若LC_COLLATE為"POSIX"或"C",則strcoll()與strcmp()作用完全相同。<BR></FONT></TD></TR>
<TR>
<TD vAlign=top width=80>
<DIV align=right><FONT face=宋體 size=2>范例 </FONT></DIV></TD>
<TD vAlign=top><FONT face=宋體 size=2>參考strcmp()。<BR></FONT></TD></TR>
<TR>
<TD vAlign=top width=80>
<DIV align=right><BR><FONT face=宋體 size=2><A
name=linuxc57></A></FONT></DIV></TD></TR>
<TR>
<TD vAlign=top width=80>
<DIV align=right><FONT face=宋體 size=2><BR></FONT></DIV></TD>
<TD vAlign=top><FONT face=宋體 size=2><BR>strcpy(拷貝字符串) </FONT></TD></TR>
<TR>
<TD vAlign=top width=80>
<DIV align=right><FONT face=宋體 size=2>相關函數 </FONT></DIV></TD>
<TD vAlign=top><FONT face=宋體
size=2>bcopy,memcpy,memccpy,memmove<BR></FONT></TD></TR>
<TR>
<TD vAlign=top width=80>
<DIV align=right><FONT face=宋體 size=2>表頭文件 </FONT></DIV></TD>
<TD vAlign=top><FONT face=宋體
size=2>#include<string.h><BR></FONT></TD></TR>
<TR>
<TD vAlign=top width=80>
<DIV align=right><FONT face=宋體 size=2>定義函數 </FONT></DIV></TD>
<TD vAlign=top><FONT face=宋體 size=2>char *strcpy(char *dest,const char
*src);<BR></FONT></TD></TR>
<TR>
<TD vAlign=top width=80>
<DIV align=right><FONT face=宋體 size=2>函數說明 </FONT></DIV></TD>
<TD vAlign=top><FONT face=宋體
size=2>strcpy()會將參數src字符串拷貝至參數dest所指的地址。<BR></FONT></TD></TR>
<TR>
<TD vAlign=top width=80>
<DIV align=right><FONT face=宋體 size=2>返回值 </FONT></DIV></TD>
<TD vAlign=top><FONT face=宋體 size=2>返回參數dest的字符串起始地址。<BR></FONT></TD></TR>
<TR>
<TD vAlign=top width=80>
<DIV align=right><FONT face=宋體 size=2>附加說明 </FONT></DIV></TD>
<TD vAlign=top><FONT face=宋體 size=2>如果參數dest所指的內存空間不夠大,可能會造成緩沖溢出(buffer
Overflow)的錯誤情況,在編寫程序時請特別留意,或者用strncpy()來取代。<BR></FONT></TD></TR>
<TR>
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -