
28.05.2009, 10:30
|
|
Участник форума
Регистрация: 26.11.2008
Сообщений: 158
С нами:
9187097
Репутация:
158
|
|
Подскажите мoжно ли в Визул студии как-то при компиляции и запуске прописать *ARGV[], например мне надо отладить "asdf.exe data.txt" ?
|
|
|

28.05.2009, 10:47
|
|
Познавший АНТИЧАТ
Регистрация: 05.03.2007
Сообщений: 1,985
С нами:
10097606
Репутация:
3349
|
|
Проект -> Свойства: xxx -> Свойства конфигурации -> Отладка -> Командные аргументы
|
|
|

30.05.2009, 18:00
|
|
Новичок
Регистрация: 19.04.2009
Сообщений: 12
С нами:
8980094
Репутация:
5
|
|
В неком файле file.txt имееться данные следующего типа:
Babyrka 12 300
Pupkin 13 200
, где Babyrka-фамилия охотника, 12-количество убитых животных, 300-вес убитых охотником животных
Код:
#include <stdio.h>
#include <stdlib.h>
typedef struct
{
char prizvishe[256];
int vpol;
int vaga;
} address;
void main ()
{
struct oxota
{
char prizvishe[256];
int vpol;
int vaga;};
struct oxota oxota1;
FILE*f;
f=fopen("file.txt","w");
fscanf(f,"%s %i %i",oxota1.prizvishe,&oxota1.vpol,&oxota1.vaga);
printf("\n Danue tablicu");
printf("\n ___________________________________________");
printf("\n Familiya oxotinka %c",oxota1.prizvishe);
printf("\n Kilkistb vpolovanux tvarun %i",oxota1.vpol);
printf("\n Zagalna vaga vsix tvarun %i",oxota1.vaga);
fclose(f);
}
Как осуществить вывод данных с file.txt?
|
|
|

30.05.2009, 18:25
|
|
Познающий
Регистрация: 13.04.2009
Сообщений: 42
С нами:
8989570
Репутация:
111
|
|
Код:
#include <stdio.h>
#define FILE_NAME "a.txt"
struct params{
char aaa[100];
char bbb[100];
char ccc[100];
};
int main(){
struct params data[100];
char line[200];
int v = 0;
FILE *fp = fopen(FILE_NAME, "r");
while ( fgets ( line, sizeof line, fp ) != NULL ){
sscanf(line, "%s %d %d", &data[v].aaa, &data[v].bbb, &data[v].ccc);
printf("%s", line);
v++;
}
printf("\n");
}
Можно так. Там уж поправь как тебе надо.
|
|
|

30.05.2009, 18:50
|
|
Новичок
Регистрация: 19.04.2009
Сообщений: 12
С нами:
8980094
Репутация:
5
|
|
Function should return a value
Код:
#include <stdio.h>
#define FILE_NAME "file.txt"
struct oxota
{
char prizvishe[256];
int vpol;
int vaga;};
int main ()
{
struct oxota data[200];
char line[200];
int v=0;
FILE*fp=fopen(FILE_NAME, "r");
while (fgets(line, sizeof line, fp)!=NULL)
{
sscanf(line, "%s %i %i", &data[v].prizvishe, &data[v].vpol, &data[v].vaga);
printf("%s", line);
v++;
}
printf("\n");
}
|
|
|

30.05.2009, 19:04
|
|
Постоянный
Регистрация: 12.12.2006
Сообщений: 906
С нами:
10216668
Репутация:
930
|
|
unfii, исправь "int main()" на "void main()" или допиши перед последней фигурной скобкой "return 0;"
|
|
|

30.05.2009, 19:22
|
|
Новичок
Регистрация: 19.04.2009
Сообщений: 12
С нами:
8980094
Репутация:
5
|
|

не хочет приложение терь стартовать 
|
|
|

30.05.2009, 19:42
|
|
Постоянный
Регистрация: 12.12.2006
Сообщений: 906
С нами:
10216668
Репутация:
930
|
|
>Dev C++ - самый корректный компилятор
Dev-c++ это среда разработки, использующая компилятор mingw
PS
"sizeof line" -------> "sizeof(line)"
Последний раз редактировалось Fata1ex; 30.05.2009 в 19:45..
|
|
|

30.05.2009, 19:45
|
|
Постоянный
Регистрация: 16.08.2006
Сообщений: 640
С нами:
10386906
Репутация:
599
|
|
ты переполнил массив, объявленный локально. у тебя всего 3 их.
char prizvishe[256];
struct oxota data[200];
char line[200];
вот и отлаживай ищи, куда ты сунул больше, чем выделил памяти.
|
|
|

30.05.2009, 19:52
|
|
Новичок
Регистрация: 19.04.2009
Сообщений: 12
С нами:
8980094
Репутация:
5
|
|
о вроде стартонуло, только ничего не показывает, пусто 
|
|
|
|
 |
|
Предыдущая тема
Следующая тема
|
Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
|
|
|
|