문자열 자르기 ...
글쓴이: Sailor_moon / 작성시간: 일, 2011/10/02 - 3:17오후
char *infoName = (char*)malloc(strlen(argv[1])); //Dynamic memory allocation.r strncpy(infoName, argv[1], strlen(argv[1]) ); //copied a string to fileName
이렇게 입력을 받았습니다 ... in C language ...
문자열을 구분하려 합니다.
infoName 에 들어온 문자열을 "/"를 기준으로 잘라내고 싶다면 어떻게 해야하죠?
ex)...
argv[1] 가 img/*.jpg -> img 와 *.jpg ...
/ 를 기준으로 잘라낸 앞부분을 새로운 pointer 에 넣으려합니다.
pointer 형으로 되어있어서 그런지 , infoName[3] 이런식으로는 접근이 안되더군요...
Forums:


string.h 헤더의 strnchr 함수를
string.h 헤더의 strnchr 함수를 사용해보세요.
이런걸 원하시는건가요? $ cat
이런걸 원하시는건가요?
$ cat basename.c #include <stdio.h> #include <libgen.h> int main(int argc, char * argv[]) { char *dirc, *basec, *bname, *dname; dirc = strdup(argv[1]); basec = strdup(argv[1]); dname = dirname(dirc); bname = basename(basec); printf("dirname=%s, basename=%s\n", dname, bname); free(dirc); free(basec); return 0; } $ ./basename img/001.jpg dirname=img, basename=001.jpg $ ./basename /usr/share/fonts/corefonts/times.ttf dirname=/usr/share/fonts/corefonts, basename=times.ttf고작 블로킹 하나, 고작 25점 중에 1점, 고작 부활동
"만약 그 순간이 온다면 그때가 네가 배구에 빠지는 순간이야"
strtok() 사용해보세요.
strtok()
사용해보세요.
댓글 달기