Recommanded Free YOUTUBE Lecture: Learning and Hacking VPC

설명

문자열의 양쪽에 있는 특정 문자들을 없애 줍니다.

사용방법

int main(int argc,char **argv){
char *str=" \n \r \n \t abcdefghijklmnopqrstuvwxyz \n \t ";
char *ret;
printf("%s\n\n",str);
trim(str,NULL,0,&ret,TRIM_RIGHT);
printf("TRIM_RIGHT\n");
printf("->%s<- %d\n\n",ret,strlen(ret));
free(ret);
trim(str,NULL,0,&ret,TRIM_LEFT);
printf("TRIM_LEFT\n");
printf("->%s<- %d\n",ret,strlen(ret));
free(ret);
trim(str,NULL,0,&ret,TRIM_ALL);
printf("TRIM_ALL\n");
printf("->%s<- %d\n\n",ret,strlen(ret));
free(ret);
trim(str,NULL,1,&ret,TRIM_ALL);
printf("TRIM_ALL(just one occurence.)\n");
printf("->%s<- %d\n\n",ret,strlen(ret));
free(ret);
 
הההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההה
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

코드

#include <stdio.h>
#include <malloc.h>
#define MALLOC_ERR 1<<4
#define MFREE_ERR 1<<5
#define FOPEN_ERR 1<<6
#define FCLOSE_ERR 1<<7
#define MALLOC(dest,type,size) \
if((dest=(type)malloc(size))==NULL) return MALLOC_ERR;
#define MFREE(dest) \
if(dest!=NULL){free(dest);}else{return MFREE_ERR;};
#define MNDUP(src,dest_type,dest,dest_size,dup_size) \
MALLOC(dest,dest_type,dest_size); \
memset(dest,0x0,dest_size);\
memmove(dest,src,dup_size);
#define TRIM_LEFT 1
#define TRIM_RIGHT 2
#define TRIM_ALL TRIM_LEFT|TRIM_RIGHT
int trim(char *str,char *list,int occur_cnt,char **ret,int mode){
char *trim_list,*first,*last;
int is_trim_c=0,trim_list_len=0,ret_len=0;
int offset[2]={0};
int trim_cnt=0;
register int i=0;
 
הההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההה
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

변경사항

2004/01/08