头æ件ï¼#include <string.h>
å®ä¹å½æ°ï¼int memcmp (const void *s1, const void *s2, size_t n);
å½æ°è¯´æï¼memcmp()ç¨æ¥æ¯è¾s1 ås2 ææçå
ååºé´ån 个å符ã
å符串大å°çæ¯è¾æ¯ä»¥ASCII ç 表ä¸ç顺åºæ¥å³å®ï¼æ¬¡é¡ºåºäº¦ä¸ºå符çå¼ãmemcmp()é¦å
å°s1 第ä¸ä¸ªå符å¼åå»s2 第ä¸ä¸ªå符çå¼ï¼è¥å·®ä¸º0 åå继ç»æ¯è¾ä¸ä¸ªå符ï¼è¥å·®å¼ä¸ä¸º0 åå°å·®å¼è¿åãä¾å¦ï¼å符串"Ac"å"ba"æ¯è¾åä¼è¿åå符'A'(65)å'b'(98)çå·®å¼(ï¼33)ã
è¿åå¼ï¼è¥åæ°s1 ås2 ææçå
åå
容é½å®å
¨ç¸ååè¿å0 å¼ãs1 è¥å¤§äºs2 åè¿å大äº0 çå¼ãs1 è¥å°äºs2 åè¿åå°äº0 çå¼ã
èä¾#include <string.h>main(){ char *a = "aBcDeF"; char *b = "AbCdEf"; char *c = "aacdef"; char *d = "aBcDeF"; printf("memcmp(a, b):%d\n", memcmp((void*)a, (void*)b, 6)); printf("memcmp(a, c):%d\n", memcmp((void*)a, (void*)c, 6)); printf("memcmp(a, d):%d\n", memcmp((void*)a, (void*)d, 6));}
æ§è¡ç»æï¼
memcmp(a, b):1 //å符串a>å符串b, è¿å1
memcmp(a, c):-1 // å符串a<å符串c, è¿åï¼1
memcmp(a, d):0 //å符串aï¼å符串d, è¿å0
追é®ä¸å¥½ææææ¯æ³ç¨ARMæ±ç¼è¯è¨å®ç°è¿ä¸åè½~