#include <string.h> void StrchrMatch(char *p1,char *p2) { int i = 0; char *p; int iArray[256] = {0}; if(strlen(p2) < strlen(p1)) { p = p1; p1 = p2; p2 = p; } while(p1[i]) { iArray[p1[i++]] = 1; } i = 0; do { if(iArray[p2[i]]) { printf("%c",p2[i]); } }while(p2[i++]); } int main(int argc, char* argv[]) { char s1[] = "fg,hi"; char s2[] = "!@#$%^&*(),{}[];'<>f"; StrchrMatch(s1,s2); system("pause"); return 0; } 输出: ,f