파일에서 숫자를 읽고 배열에 넣고 싶습니다. 문제은 숫자가 올바르게 추출되었지만 은 배열에 저장할 수 없습니다. 프로그램이 실행 된 후에 배열이 비어 있음을 의미합니다. 나는이 코드가 쓰레드에 의해 사용된다는 것을 언급해야한다. 루프에서C의 파일에서 추출한 번호로 배열 채우기
int ordercount=0;
//initialize
int Order[10]={0};
int Credit[10]={50,50,50,50,50,50,50,50,50,50};
//For reading a file
FILE *myfile;
//Semaphore
pthread_mutex_t mtx;
char char_get;
void *orders(void *arg)
{
///////////////////////////////////////////read from a file
myfile=fopen("List.txt","r+");
int k=0;
//pthread_mutex_lock(&mtx);
fscanf (myfile, "%d", &k);
while (!feof (myfile))
{
ordercount++;
Order[k]=k;
printf("The initial Order is: %d \n",Order[k]);
fscanf (myfile, "%d", &k);
}
fclose (myfile);
//pthread_mutex_unlock(&mtx);
}
'주문 [K] = K (
do/while
하고 파일에 너무 많은 값에 대한 보호 기능을 사용하여) '이 무엇을 생각합니까? – stark당신은'ordercount'를 사용하지 않고 배열의 무작위 위치에 항목을 저장합니다 ... –
@stark : 응답 해 주셔서 감사합니다. 다른 것을 쓰고 싶습니다. – Reza