Форум программистов, компьютерный форум CyberForum.ru
Наши страницы

Debug Assertion Failed - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Запись чисел в массив http://www.cyberforum.ru/cpp-beginners/thread1065485.html
#include <iostream> #include <clocale> using namespace std; const int SizeMassive = 50; int main() { setlocale(LC_ALL, "rus");
C++ Работа с двоичными файлами Дан файл координат вершин ломаной линии на плоскости. Определить, имеет ли ломаная линия самопересечения, если да, то записать в файл G координаты точек самопересечения. Реализовать на двоичных... http://www.cyberforum.ru/cpp-beginners/thread1065483.html
Не создаётся объектный файл C++
Необходимо создать объектный файл вот код: #include <stdio.h> //#include <conio.h> extern "C" void asmproc(char ch, unsigned x, unsigned y, unsigned kol); void main (void) { ...
Что это значит? C++
Что значит условие (!a)?В каком случае будет выполняться правда? if(!a) { // что угодно } else { // что угодно }
C++ Чем открыть файл cсv файл в текстовом документе? http://www.cyberforum.ru/cpp-beginners/thread1065456.html
чем открыть файл cсv файл в текстовом документе?
C++ При переводе из double в string теряются знаки после запятой Перевожу переменную double в string stringstream sst; string f_str; double f=12345.99; sst << f; f_str= sst.str();sst.str(""); _cprintf("f_str= %s", f_str.c_str());_cprintf("\n"); подробнее

Показать сообщение отдельно
Alexandr V
Сообщений: n/a

Debug Assertion Failed - C++

08.01.2014, 09:25. Просмотров 167. Ответов 0
Метки (Все метки)

Народ помогите пожалуйста. Горю! Дан файл txt, со списком студентов. В списке есть однофамильцы. Их и нужно вывести на экран. Код написал. Прога запускается, Но в конце пишет Debug Assertion Failed. Line 77. Подскажите что я делаю не так?


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
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
#include "stdafx.h"
#include <conio.h>
#include <stdio.h>
#include <string.h>
#include <io.h>
#include <iostream>
#include<TCHAR.H>
#define false 0
#define true 1
 
typedef struct
{ char name[20];
  char surname[20];
  char klass[1];
  char form[1];
} pupil;
 
char fname[80]="c:\\students.txt";
char r[2] = ";";
int b = 0;
 
// Функция заполнения файла студентов
// n- количество студентов
void input(int n)
{
 pupil p;
 int i;
 FILE *fp;
 fp=fopen(fname,"w+b");
  for (i=1;i<=n;i++)
  {
  char h ;
      std::cout<<"Input "<<i<<" name \n";
  std::gets(p.name);
  std::cout<<"Input "<<i<<" surname \n";
  std::gets(p.surname);
  std::cout<<"Input "<<i<<" class \n";
  std::cin >>p.klass; 
  std::cout<<"Input "<<i<<" form \n";
  std::cin >>p.form;
  
  char mass[46] = "";
  
  strcat(mass,strcat(p.name,r));
  strcat(mass,strcat(p.surname,r));
  strcat(mass,strcat(p.klass,r));
  strcat(mass,strcat(p.form,"#"));
  fwrite(&mass,sizeof(mass),1,fp);
  }
 fclose(fp);
}
//Функция поиска
bool search(char name[20])
{
  pupil p;
  int i;
 
  FILE *fp;
 
  fp=fopen(fname,"r");
  i=0;
  char ch;
  do {
    ch = getc(fp);
    ++i;
    if((ch != ';') && (i <= 20) && (ch != '#'))
  {
      p.name[i] = ch;
  }
  else
  {
      if (p.name[0] != '~')
      {
      if (std::strcmp(p.name,  &name[20]))
      {
      std::cout << p.name ;//"Выводим имя: \n";  
      p.name[0] = '~';
      ++b;
      }
      }
  }
  if (ch == '#')
  {
    i = 0;
  }
}
  while (ch!=EOF);
  fclose(fp);
  if (b > 0)
      return true;
  else
  return false;
  
}
int _tmain(int argc, _TCHAR* argv[])
{
    setlocale(LC_ALL,"RUS");
{
  char n[60]; bool b;
 
    int count = 2;
    // Вводим список студентов
    std::cout << "Please, fill the students list: \n";
    input(count);
    // Вводим искомое имя
    std::cout << "Please, enter your full name: \n";
    std::gets(n);
 
    // Поиск имени
    b=search(n);
  // Вывод информации
    switch(b)
    {
    case 1:std::cout<<"There are pupils with same surname in the school\n"; break;
    case 0:std::cout<<"There are no pupils with same surname in the school\n"; break;
    }
    getch();
     std::system("pause");
    return 0;
}
}
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru