문자열을 파일 포인터처럼 쓸려면???
글쓴이: uuix00 / 작성시간: 수, 2008/01/16 - 11:54오후
test파일내용이 "1 2" 라고 한다면(따옴표 제외) 아래와 같은 구문을 실행하면
FILE *fp=fopen("test", "r");
fscanf(fp, "%d", &test);
fscanf(fp, "%d", &test2);
하나를 읽으면 자동으로 포인터가 증가해서 test=1, test2=2 가 되는데요
아래와 같이 열에 있는 내용을 위처럼 할려면 어떻게 해야 하나요?
char test[]="1 2";
sscanf(test, "%d", &test);
sscanf(test, "%d", &test2);
test=1, test2=1...
***
찾아보니 fmemopen 이라는 적당한 함수가 있던데 GNU 라이브러리더군요.
혹시 이와 비슷한 함수 아시는분 있으신가요?
그리고 sscanf(test, "%d%d", &test, &test2);
는 원하는 답변이 아닙니다.
Forums:
이런 포맷팅은
바로 지적하신 대로 sscanf( ) 로 하시는 게 좋습니다.
만약 정형화된 형태가 아니고 변환할 개수가 가변인 상황에서도 sscanf 로 충분히 할 수 있습니다.
while
배열 인덱스를 만들어 쓰는게 나을 듯한데요.
#include #include main() {
그냥 간단하게 이렇게 토막쳐서 읽어보는건 어떨까 합니다만..
c++ 이라면 fstream 과
c++ 이라면 fstream 과 stringstream이 정확히 님이 원하는 관계인듯..
댓글 달기