|
发表于 2024-3-11 00:36:33
|
显示全部楼层
4# G-Spider
不错,有点tricky,我知道怎么做了。
我的实际需求其实是把结构体的都是char []的成员用逗号 join 成一个字符串。
===========
BTW,貌似高手都不太喜欢用calloc呢,- #include <stdio.h>#include <stdlib.h>#include <string.h>typedef struct { char d0[12]; char d1[6]; char d2[5];} tD,*pD;void removezero(char *dst,char *src,int len){ char *p=src; int i; for(i=0; i<len; i+=strlen(p)+1) { p=src+i; strcat(dst,p); }}int main(){ pD src=NULL,dst=NULL; src=(pD)calloc(1,sizeof(tD)); dst=(pD)calloc(1,sizeof(tD)); if(NULL==src|| NULL==dst) return 1; // memset(dst,0,sizeof(tD)); // memset(src,0,sizeof(tD)); /*彘濮邃负0*/ strcpy(src->d0,"good"); strcpy(src->d1,"luck"); strcpy(src->d2,"man"); /*-------------------join---------------------*/ removezero((char *)dst,(char *)src,sizeof(tD)); printf("%s\n",(char *)dst);// system("pause"); return 0;}
复制代码 |
|