Ejemplo n.º 1
0
Archivo: view.c Proyecto: CoREse/gqt
int view(int argc, char **argv)
{
    if (argc < 2) return view_help();

    int c;
    char *in = NULL, *out = NULL;
    int i_is_set = 0,
        r_is_set; 
    int record_id = -1;

    while ((c = getopt (argc, argv, "hi:r:")) != -1) {
        switch (c) {
            case 'i':
                i_is_set = 1;
                in = optarg;
                break;
            case 'r':
                r_is_set = 1;
                record_id = atoi(optarg);
                break;
            case 'h':
                view_help();
                return 1;
            case '?':
                if (optopt == 'i') 
                    fprintf (stderr, "Option -%c requires an argument.\n",
                            optopt);
                else if (isprint (optopt))
                    fprintf (stderr, "Unknown option `-%c'.\n", optopt);
                else
                fprintf (stderr, "Unknown option character `\\x%x'.\n", optopt);
                return view_help();
            default:
                return view_help();
        }
    }

    char *type = argv[0];

    if (i_is_set == 0) {
        fprintf(stderr, "Input file is not set\n");
        return view_help();
    } 

    if (strcmp(type, "plt") == 0)  return view_plt(in);
    else if (strcmp(type, "ubin") == 0) return view_ubin(in, record_id);
    else if (strcmp(type, "wahbm") == 0) return view_wahbm(in);

    return 1;
}
Ejemplo n.º 2
0
int main(int argc,char *argv[])
{
    if(argc>1)
    {
        if(!strcmp(argv[1],"-h"))
         view_help();
    }
    int records = 0, i;
    char *string;
    struct students *person;
    do {
            string = (char *) calloc(5, sizeof(char));
            person = (struct students*) calloc(5, sizeof(struct students));
    } while (!person && !string);
    puts("ATTENCION: maximum length of record cannot exceed 19 symbols");
    while (records < 5) {
        input(person, records);
        records++;
        puts("enter stop to quit");
        fgets(string,5,stdin);
        if(strcmp(string,"stop")==0)
            break;
        }
    if (records == 5)
        puts("you can enter only 5 persons");
    show_students(person,records);
    return 0;
}