2014-03-03 3 views
0

배열의 첫 번째 n 요소를 저장하기 위해 파일에서 데이터를 읽으려고합니다. 나는 배열의 내용을 검사 할 때C에서 파일의 정수 값 읽기

0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, ... 

, 내가 올바른 값을 찾을 수없는 올바른 값의 주소를 saveing처럼 보인다 : 데이터는 정수 순서입니다 (?)?

0 
1 
2 
3 
... 
+0

라인을 읽으려면 [fgets] (http://www.cplusplus.com/reference/cstdio/fgets/)를 사용할 수 있습니다. 예도 있습니다. – hofmeister

답변

3

이이 문제를 해결해야합니다 : 입력 파일은 다음과 같은 순서로 포함되어있는 경우

FILE* ifp; 
ifp = fopen ("input.txt", "r"); 
int n = 10; 

int* readbuf; 
readbuf = (int *) malloc (n * sizeof(int)); 

for (int i=0; i<n; i++){ 
    int j = 0; 
    fscanf (ifp, "%d", &j); 
    j = readbuf[i]; 
    printf ("\n j = %d and readbuf = %d", j, readbuf[i]); 
} 
fclose(ifp); 

코드가 달라집니다 : 여기

내 코드의 조각

readbuf[i] = j; 

대신

j = readbuf[i]; 
+0

와우, 고마워! 이제 나는 그것을 보았고 내가 생각할 수있는 것은 모두/facepalm – Sameed

+0

당신을 실망시키지 마십시오. 때로는 최고의 프로그래머에게도 일어납니다. –