?? linux 常用c函數(中文版)-內存控制及字符串操作.htm
字號:
*src,size_t n);<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>strncpy()會將參數src字符串拷貝前n個字符至參數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>#inclue
<string.h><BR>main()<BR>{<BR>char a[30]="string(1)";<BR>char
b[]="string(2)";<BR>printf("before strncpy() : %s\n",a);<BR>printf("after
strncpy() : %s\n",strncpy(a,b,6));<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 strncpy() : string(1)<BR>after
strncpy() : string(1)<BR></FONT></TD></TR>
<TR>
<TD vAlign=top width=80>
<DIV align=right><BR><FONT face=宋體 size=2><A
name=linuxc64></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>strpbrk(查找字符串中第一個出現的指定字符)
</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,rindex,strpbrk,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
<include.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 *strpbrk(const char *s,const char
*accept);<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>strpbrk()用來找出參數s 字符串中最先出現存在參數accept
字符串中的任意字符。<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=strpbrk(s,"a1
839"); /*1會最先在s字符串中找到*/<BR>printf("%s\n",p);<BR>p=strprk(s,"4398");/*3
會最先在s 字符串中找到*/<BR>printf("%s\n",p);<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>1.23E+29<BR></FONT></TD></TR>
<TR>
<TD vAlign=top width=80>
<DIV align=right><BR><FONT face=宋體 size=2><A
name=linuxc65></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>strrchr(查找字符串中最后出現的指定字符)
</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,rindex,strpbrk,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 * strrchr(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>strrchr()用來找出參數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=strrchr(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>567890<BR></FONT></TD></TR>
<TR>
<TD vAlign=top width=80>
<DIV align=right><BR><FONT face=宋體 size=2><A
name=linuxc66></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>strspn(返回字符串中連續不含指定字符串內容的字符數)
</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>strcspn,strchr,strpbrk,strsep,strstr<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>size_t strspn (const char *s,const
char * accept);<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>strspn()從參數s
字符串的開頭計算連續的字符,而這些字符都完全是accept 所指字符串中的字符。簡單的說,若strspn()返回的數值為n,則代表字符串s
開頭連續有n 個字符都是屬于字符串accept內的字符。<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>返回字符串s開頭連續包含字符串accept內的字符數目。<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 *str="Linux was
first developed for 386/486-based PCs.";<BR>char
*t1="abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ";<BR>printf("%d\n",strspn(str,t1));<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 /*計算大小寫字母。不包含“
”,所以返回Linux的長度。*/<BR></FONT></TD></TR>
<TR>
<TD vAlign=top width=80>
<DIV align=right><BR><FONT face=宋體 size=2><A
name=linuxc67></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>strstr(在一字符串中查找指定的字符串)
</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,rindex,strchr,strpbrk,strsep,strspn,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 *strstr(const char
*haystack,const char *needle);<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>strstr()會從字符串haystack
中搜尋字符串needle,并將第一次出現的地址返回。<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="012345678901234567890123456789";<BR>char *p;<BR>p=
strstr(s,"901");<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>9.01E+21<BR></FONT></TD></TR>
<TR>
<TD vAlign=top width=80>
<DIV align=right><BR><FONT face=宋體 size=2><A
name=linuxc68></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>strtok(分割字符串) </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,rindex,strpbrk,strsep,strspn,strstr<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 * strtok(char *s,const char
*delim);<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>strtok()用來將字符串分割成一個個片段。參數s指向欲分割的字符串,參數delim則為分割字符串,當strtok()在參數s的字符串中發現到參數delim的分割字符時則會將該字符改為\0
字符。在第一次調用時,strtok()必需給予參數s字符串,往后的調用則將參數s設置成NULL。每次調用成功則返回下一個分割后的字符串指針。<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>返回下一個分割后的字符串指針,如果已無從分割則返回NULL。<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[]="ab-cd : ef;gh
:i-jkl;mnop;qrs-tu: vwx-y;z";<BR>char *delim="-: ";<BR>char
*p;<BR>printf("%s
";strtok(s,delim));<BR>while((p=strtok(NULL,delim)))printf("%s
",p);<BR>printf("\n");<BR>}<BR></FONT></TD></TR>
<TR>
<TD vAlign=top width=80>
<DIV align=right><FONT face=宋體 size=2>執行 </FONT></DIV></TD>
<TD vAlign=top><FO
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -