原数据:
处理后的数据:
完整代码:
1 //思路; 2 //数据清洗(把空格替换成' ') -> 精确获取每一行(要提前获取source的总长度) -> 获取出每一行再精确分割并把分割后的数据赋给结构体 3 4 #define _CRT_SECURE_NO_WARNINGS 5 #include <iostream> 6 #include <stdlib.h> 7 #include <string.h> 8 9 //要被挖掘的数据 10 char str[1024] = "569603080----zj123456789 11 94940443----zj123456789 12 260024036----zj1456789 13 707611428----zj123456789 14 793516568----zj123456789 15 280105138----zj1256789 16 853339297----zj145678 17 791088021----zj1234789 18 461913547----zj12366456789 19 739195069----zj12389 20 595061094----zj123789 21 835928755----zj123456789 22 824218951----zj123456789 23 824219738----zj123456789 24 824220392----zj16789 25 793708834----zj123456789 26 462942630----zj1789 27 779446648----zj1256789 28 807517937----zj123456789 29 785332401----zj123456789 30 824637233----zj123456789 31 824637654----zj126789 32 824642464----zj123456789 33 657004476----zj123456789 34 550261273----zj16789 35 771451402----zj123456789 36 478838706----zj123456789 37 837569545----zj12345789 38 838778566----zj12789 39 838466198----zj126789 40 807522015----zj1236789 41 823194447----zj12789 42 295936400----zj123456789 43 838041792----zj1239 44 838042137----zj123456789 45 838042825----zj1289 "; 46 47 //求出数据长度 48 int totalLength; 49 50 //获取有多少行数据 51 int getlength(char *src) 52 { 53 int num = 0; 54 char *pstart = strstr(src, "----"); 55 56 while (pstart != NULL) 57 { 58 num++; 59 pstart = strstr(pstart+4, "----"); 60 } 61 return num; 62 } 63 64 //QQ号结构体 65 struct QQ 66 { 67 long long qqNum; 68 char *mima; 69 }; 70 71 //匿名结构体存储所有QQ 72 struct 73 { 74 struct QQ *data; 75 int length; 76 }MyData; 77 78 //数据清洗,把空格替换成‘ ’ 79 void wash(char *src) 80 { 81 while (*src != '