argc,argv
뽀야
어제 질문을 올리긴했는데..
cmd창 켜서 매개변수를 주려하는데 어떻게 해야할지 모르것네요 argc argv써보는건 처음이라.. cmd가서 어떻게 넘겨줘야할까요?
fileinputoutput.exe 3 3
이런식으로 주는거맞나요?
#include stdio.h
#include string.h
#include stdlib.h
typedef struct _Grade {
char Name[10];
int Number;
int Grade;
} Grade;
Grade Data[3];
int DoReadAction(char *name);
int OutputUserData(char *name);
int main(int argc, char* argv[])
{
char name[10];
if(argc 2) {
printf([사용법] ex11_6.exe 검색_이름 \n);
printf(예 : ex11_6.exe park \n);
return -1;
}
strcpy(name, argv[1]);
DoReadAction(name);
system(pause);
return 0;
}
int DoReadAction(char* name)
{
FILE* fin;
if((fin = fopen(grade.dat,rb)) == NULL) {
printf(파일을 열수 없습니다.);
return -1;
}
if(fread(Data, sizeof(Grade), 3, fin) != 3)
{
printf(데이타 읽기에 오류가 있습니다.);
fclose(fin);
return -1;
}
fclose(fin);
OutputUserData(name);
return 0;
}
int OutputUserData(char* name)
{
int i;
for(i = 0; i 3; i++)
{
if(!strcmp(Data[i].Name, name)){
printf(\n[%s]에 대한 학번과 점수입니다.\n,name);
printf(----------------------------\n);
printf([학번]: %d\n, Data[i].Number);
printf([이름]: %s\n, Data[i].Name);
printf([점수]: %d\n, Data[i].Grade);
printf(----------------------------\n);
return 0;
}
}
printf([%s]라는 이름이 없군요...다시 실행해주세요,name);
return -1;
}
-
여우By
system(\pause\); 이게 실행 되기전에 return를 만나서 끝난듯 보이네요.