1,getenv(const char * name)搜索name所指向的环境变量字符串,并返回相关的值给字符串
#include <stdio.h> #include <stdlib.h> int main () { printf("PATH : %s ", getenv("PATH")); printf("HOME : %s ", getenv("HOME")); printf("ROOT : %s ", getenv("ROOT")); return(0); }
2,strcmp(const char *str1,const char *str2)把str1所指向的字符串和str2所指向的字符串进行比较
#include <stdio.h> #include <string.h> int main () { char str1[15]; char str2[15]; strcpy(str1, "abcdef"); strcpy(str2, "ABCDEF"); int ret = strcmp(str1, str2); if(ret < 0) { printf("str1 小于 str2"); } else if(ret > 0) { printf("str2 小于 str1"); } else { printf("str1 等于 str2"); } return(0); }
3,int sscanf(char *str,const char * format)从字符串读取格式化输入
sscanf( cgistr, "Ip=%[^|]|Port=%d|JobName=%[^|]|Filter=%[^|]|", cBusIp, &nPort,cJob,pJobInfo); 将cgistr中的值按格式复给后面四个cbusip
4,int memcmp(const void *str1, const void *str2, size_t n)) 把存储区 str1 和存储区 str2 的前 n 个字节进行比较,不区分大小写
#include<stdio.h> #include<stdlib.h> int main() { char *p1="qweqwe"; char *p2="qweQWE"; int ret=memcmp(p1,p2,3); if(ret<0) { printf("p1<p2 "); } else if(ret>0) { printf("p1>p2 "); } else { printf("p1=p2 "); } }
5,inet_ntoa()将网络地址转换成" . "点隔的字符串格式
#include <stdio.h> #include <sys/socket.h> #include <netinet/in.h> #include <arpa/inet.h> #include <string.h> int main(int argc, char *argv[]) { struct in_addr addr1,addr2,addr3; ulong l1,l2,l3; l1= inet_addr("192.168.0.74"); l2 = inet_addr("211.100.21.179"); memcpy(&addr1, &l1, 4); memcpy(&addr2, &l2, 4); printf("%s ", inet_ntoa(addr1)); printf("%s ", inet_ntoa(addr2)); return 0; }