Qwertigo
1

Помогите С Комментариями

26.04.2008, 15:55. Показов 2050. Ответов 1
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Ребят помогите написать подробные комментарии! Очень надо! Просто позарез! зарание спасибо!
вот код:
CОХРАНЕНИЕ И ЗАГРУЗКА ФАЙЛА
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
void __fastcall TForm1::Button2Click(TObject *Sender)
{
if (SaveDialog1->Execute())
{
        int f;
        if (FileExists(SaveDialog1->FileName))
        {
                DeleteFile(SaveDialog1->FileName);
                f = FileCreate(SaveDialog1->FileName, fmOpenWrite);
        }
        else
                f = FileCreate(SaveDialog1->FileName);
        if (f != -1)
        {
                for (int i = 0; i < StringGrid1->RowCount; i++)
                {
                        AnsiString st = StringGrid1->Rows[i]->DelimitedText + "\r\n";
                        FileWrite(f,st.c_str(),st.Length());
                }
                FileClose(f);
        }
        else ShowMessage("Ошибка доступа");
}
}
//---------------------------------------------------------------------------
 
int GetLine(int f, AnsiString *st)
{
        unsigned char buf [256];
        unsigned char *p = buf;
        int n;
        int len=0;
        n = FileRead(f, p, 1);
        while(n != 0)
        {
                if (*p == '\r')
                {
                        n=FileRead(f,p,1);
                        break;
                }
                len++;
                p++;
                n=FileRead(f, p, 1);
        }
        *p = '\0';
        if (len != 0 )
                st->printf("%s", buf);
        return len;
        }
 
void __fastcall TForm1::Button3Click(TObject *Sender)
{
for (int i=0; i<StringGrid1->RowCount; i++)
        StringGrid1->Rows[i]->Clear();
StringGrid1->RowCount=0;
StringGrid1->ColCount=0;
if (OpenDialog1->Execute())
{
    int f;
    AnsiString st;
    bool fl = true;
 
    f = FileOpen(OpenDialog1->FileName, fmOpenRead);
    if (f == -1)
        exit;
 
    while (GetLine(f,&st) != 0)
    {
        if (fl)
        {
                for (int i=1; i<st.Length(); i++)
                        if (st[i]==',') StringGrid1->ColCount++;
                StringGrid1->Rows[StringGrid1->Row]->DelimitedText = st;
                fl = false;
                n = StringGrid1->ColCount;
                k = new int*[n];
                for (int i = 0; i < n; i++)
                        k[i] = new int[n];
        }
        else
        {
                StringGrid1->RowCount++;
                StringGrid1->Row = StringGrid1->RowCount - 1;
                StringGrid1->Rows[StringGrid1->Row]->DelimitedText = st;
        }
    }
    for (int i = 0; i < StringGrid1->ColCount; i++)
        for (int j = 0; j < StringGrid1->RowCount; j++)
                k[i][j] = StringGrid1->Cells[i][j].ToInt();
    FileClose(f);
}
}
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
26.04.2008, 15:55
Ответы с готовыми решениями:

Помогите с комментариями к программе
Очень прошу помочь сделать подробные комментарии к уже готовой программе, написанной в билдере! Это...

Помогите с комментариями
using System; using System.Collections.Generic; using System.Linq; class Program { ...

ПОМОГИТЕ с комментариями
прокомментируйте плиз прогу, я прост в паскале не силен......желательно подробно.....спс.... вот...

Хочу разобраться в коде. Помогите с комментариями
Здравствуйте. Имеется программа реверса текстового файла. Так как только учусь программировать на...

1
10 / 3 / 7
Регистрация: 25.03.2008
Сообщений: 50
29.04.2008, 19:23 2
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
void __fastcall TForm1::Button2Click(TObject *Sender)   //обработка щелчка по Button2
{
if (SaveDialog1->Execute())     //диалоговое окно сохранения файла
{
        int f;
        if (FileExists(SaveDialog1->FileName))   //проверка на сущ-е файла
        {
                DeleteFile(SaveDialog1->FileName);  //если да, то удаление сущ-его файла с таким именем
                f = FileCreate(SaveDialog1->FileName, fmOpenWrite); //сохранение файла
        }
        else
                f = FileCreate(SaveDialog1->FileName);   //сохранение файла
        if (f != -1)       //проверка на удачность сохранения
        {
                for (int i = 0; i < StringGrid1->RowCount; i++)  //перебор всех рядов
                {
                        AnsiString st = StringGrid1->Rows[i]->DelimitedText + "\r\n"; //присваивание строке текста из рядов StringGrid1 и конкатенация с символами возврата каретки и перехода на нов строку
                        FileWrite(f,st.c_str(),st.Length());  //запись строки в файл
                }
                FileClose(f);      //закрытие файла
        }
        else ShowMessage("Ошибка доступа");    //вывод ошибки
}
}
//---------------------------------------------------------------------------
int GetLine(int f, AnsiString *st)    //чтение строк из файла
{
        unsigned char buf [256];    //буфер под строку
        unsigned char *p = buf;     //ук-ль на буфер
        int n;
        int len=0;      //длина файла
        n = FileRead(f, p, 1);     //чтение из файла
        while(n != 0)
        {
                if (*p == '\r')
                {
                        n=FileRead(f,p,1);   //если не символ возврата каретки, то читаем в буфер
                        break;
                }
                len++;      //инкремент длины
                p++;
                n=FileRead(f, p, 1);    //чтение из файла
        }
        *p = '\0';      //конечный ноль
        if (len != 0 )
                st->printf("%s", buf);
        return len;      //возврат длины файла
        }
void __fastcall TForm1::Button3Click(TObject *Sender)  //обработка щелчка по Button3
{
for (int i=0; i<StringGrid1->RowCount; i++)   //очистка StringGrid1
        StringGrid1->Rows[i]->Clear();
StringGrid1->RowCount=0;
StringGrid1->ColCount=0;
if (OpenDialog1->Execute())     //диалоговое окно открытия файла
{
    int f;
    AnsiString st;
    bool fl = true;
    f = FileOpen(OpenDialog1->FileName, fmOpenRead);  //открытие файла
    if (f == -1)
        exit;
    while (GetLine(f,&st) != 0)     //чтение строки
    {
        if (fl)
        {
                for (int i=1; i<st.Length(); i++)  //проход по всей строке
                        if (st[i]==',') StringGrid1->ColCount++; //если запятая то инкремент кол-ва колонок
                StringGrid1->Rows[StringGrid1->Row]->DelimitedText = st; //запись строки в StringGrid1
                fl = false;
                n = StringGrid1->ColCount;   //кол-во колонок
                k = new int*[n];    //динам выделение памяти под указатели типа int в кол-ве n
                for (int i = 0; i < n; i++)
                        k[i] = new int[n];   //динам выделение памяти под массив типа int в кол-ве n
        }
        else
        {
                StringGrid1->RowCount++;   //инкремент кол-ва рядов
                StringGrid1->Row = StringGrid1->RowCount - 1;
                StringGrid1->Rows[StringGrid1->Row]->DelimitedText = st; //присваивание строки в StringGrid1
        }
    }
    for (int i = 0; i < StringGrid1->ColCount; i++)
        for (int j = 0; j < StringGrid1->RowCount; j++)
                k[i][j] = StringGrid1->Cells[i][j].ToInt(); //присваивание массиву k значений StringGrid1
    FileClose(f);  //закрытие файла
}
}
Если что обращайся.
0
29.04.2008, 19:23
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
29.04.2008, 19:23
Помогаю со студенческими работами здесь

Желательно с комментариями.)
1. Тема &quot;Записи&quot;. Решение задач с применением пользовательского типа Запись Багаж пассажира...

Блок с комментариями
Добрый день программисты!)) Возник вопрос, у меня есть текстовое поле &lt;div...

Убрать над комментариями
Не могу понять где ковырять в шаблоне или нет . Над комментариями высвечивается вот такое . ...

Постраничный вывод с комментариями
Здравствуйте. Решил создать на своем сайте страницу, которая бы постранично выводила записи из базы...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru