Меню

Ошибка c2447 отсутствует заголовок функции возможно используется формальный список старого типа

Help me solve this error! Thank you very much!

#ifdef _MSC_VER
#define _CRT_SECURE_NO_WARNINGS
#endif
#include <stdio.h>
#include <math.h>
#include<iostream>
using namespace std;
#define N 2 // number of equations
#define dist 0.1 //step size
#define MIN 0.0   //minimum x
#define MAX 10.0  //maximum x
int main() {
    double x, y[N];
    //int j;
    void runge4(double x, double y[], double step);         //header
    double f(double x, double y[], int i);
    FILE *output; // save data in rk4.dat
    output= fopen("rk4.dat","w"); 
    y[0]= 1.0;//initial position
    y[1]= 0.0;///initial velocity
    fprintf(output, "%f/t%f/n",x,y[0]); 
    for (x= MIN; x<= MAX; x+= dist) {
        runge4(x, y,dist);
        fprintf(output,"%f/t%f/n", x, y[0]); //position vs time
    }
    printf("data stored in rk4.datn");
    fclose(output); 
} //end of main program
void runge4(double x, double y[], double step); 
 {  //rk4 subroutine
   double f(double x, double y[], int i);
   double h = step/2.0
   t1[N],t2[N],t3[N],k1[N],k2[N],k3[N],k4[N];
   int i;
   for (i = 0; i<N; i++) t1[i]=y[i]+0.5*(k1[i]=step*f(x,y,i));
   for (i = 0; i<N; i++) t2[i]=y[i]+0.5*(k2[i]=step*f(x+h,t1,i));
   for (i = 0; i<N; i++) t3[i]=y[i]+(k3[i]=step*f(x+h,t2,i));
   for (i = 0; i<N; i++) k4[i]=step*f(x+step,t3,i);
   for (i = 0; i<N; i++) y[i]+=(k1[i]+2*k2[i]+2*k3[i]+k4[i])/6.0;
 }
double f(double x, double y[], int i) 
{ //RHS equations
if (i==0) return(y[1]);           //RHS of first equation
if (i==1) return(-y[0]);          //RHS of second equation
}

It’s 4th order runger-kutta solution for harmonic oscillator, i got this from computational physics H.Landau.I don’t know how to fix this, please help me!

Help me solve this error! Thank you very much!

#ifdef _MSC_VER
#define _CRT_SECURE_NO_WARNINGS
#endif
#include <stdio.h>
#include <math.h>
#include<iostream>
using namespace std;
#define N 2 // number of equations
#define dist 0.1 //step size
#define MIN 0.0   //minimum x
#define MAX 10.0  //maximum x
int main() {
    double x, y[N];
    //int j;
    void runge4(double x, double y[], double step);         //header
    double f(double x, double y[], int i);
    FILE *output; // save data in rk4.dat
    output= fopen("rk4.dat","w"); 
    y[0]= 1.0;//initial position
    y[1]= 0.0;///initial velocity
    fprintf(output, "%f/t%f/n",x,y[0]); 
    for (x= MIN; x<= MAX; x+= dist) {
        runge4(x, y,dist);
        fprintf(output,"%f/t%f/n", x, y[0]); //position vs time
    }
    printf("data stored in rk4.datn");
    fclose(output); 
} //end of main program
void runge4(double x, double y[], double step); 
 {  //rk4 subroutine
   double f(double x, double y[], int i);
   double h = step/2.0
   t1[N],t2[N],t3[N],k1[N],k2[N],k3[N],k4[N];
   int i;
   for (i = 0; i<N; i++) t1[i]=y[i]+0.5*(k1[i]=step*f(x,y,i));
   for (i = 0; i<N; i++) t2[i]=y[i]+0.5*(k2[i]=step*f(x+h,t1,i));
   for (i = 0; i<N; i++) t3[i]=y[i]+(k3[i]=step*f(x+h,t2,i));
   for (i = 0; i<N; i++) k4[i]=step*f(x+step,t3,i);
   for (i = 0; i<N; i++) y[i]+=(k1[i]+2*k2[i]+2*k3[i]+k4[i])/6.0;
 }
double f(double x, double y[], int i) 
{ //RHS equations
if (i==0) return(y[1]);           //RHS of first equation
if (i==1) return(-y[0]);          //RHS of second equation
}

It’s 4th order runger-kutta solution for harmonic oscillator, i got this from computational physics H.Landau.I don’t know how to fix this, please help me!

Столкнулся с такой задачей, где нужно реализовать свой list. По примеру из источника я в шаблонный класс включил обычный класс.

template<class T>class List {
   class Node {
   public:
    T d;
    Node *next, *prev;
        Node(T dat = 0) { d = dat; next = 0; prev = 0; }
};
    Node *pbeg, *pend;
public:
    List() { pbeg = 0; pend = 0; }
   ~List();
   void add(T d);
   Node * find(T i);
   Node * insert(T key,T d);
   bool remove(T key);
   void print();
   void print_back();
};

Без методов


Node * find(T i);
Node * insert(T key,T d);

код компилируется, а с ними нет и выдает гору ошибок типа:

Серьезность Код Описание Проект Файл Строка Состояние подавления
Ошибка C2447 {: отсутствует заголовок функции (возможно, используется формальный список старого типа) Шаблонный_класс_вариант2 c:usersсемёнdocumentsvisual studio 2015projectsшаблонный_класс_вариант2шаблонный_класс_вариант2list.h 101
Серьезность Код Описание Проект Файл Строка Состояние подавления

Ошибка C2988 неопознанное объявление или определение шаблона Шаблонный_класс_вариант2 c:usersсемёнdocumentsvisual studio 2015projectsшаблонный_класс_вариант2шаблонный_класс_вариант2list.h 99

сама реализация методов:

template<class T> Node* List<T>::find(T i) {
   Node *pv = pbeg;
   while (pv)
   {
       if (pv->d == i)
           break;
       pv = pv->next;
   }
   return pv;
 }

  template<class T> Node * List<T>::insert(T key, T d) {
      if (Node* pkey = find(key)) {
       Node* pv = new Node(d);
       pv->next = pkey->next;
        pv->prev = pkey;
       pkey->next = pv;
       if (pkey != pend)
           (pv->next)->prev = pv;
       else
           pend = pv;
      return pv;
    }
   return 0;
  }

В чем подвох? Спасибо.

Войти или зарегистрироваться

  1. Соблюдайте Правила форума и проявляйте уважение к другим участникам беседы.

Solved Не хочет компилировать

Тема в разделе ‘Кодинг/Собственные решения’, создана пользователем Sk1llz, 26 сен 2012.


  1. Sk1llz
    Ньюфаг

    Сообщения:
    12
    Спасибы:
    0
    Дата начала использования бота:
    1.11.2011

    Хотел поставить себе «правила» . Но после компиляции вылетают ошибки.
    вот то что хотел поставить , ставил его в команды game.ccp

    Код:
              //
        // !RULEZZZZ
        //
     
        if ( Command == "rules" )
        {
            SendChat( "1-е: не дрочить");
            SendChat("2-е: темболее с улыбкой на лице");
            SendChat("3-e: не кусатсо");
                    }

    Так же когда ставлю «Fake», куча ошибок вылета
    Ghostone 1.7.266


    Sk1llz,
    26 сен 2012

    #1


  2. Doterok
    Старожила

    Сообщения:
    923
    Спасибы:
    171
    Сборка бота GHost:
    Ghost ++ 17.2
    Дата начала использования бота:
    2011

    код, факе и прочее
    куда ставил (по 5 строчек снизу с верху)
    зы к кодингу это не относится все вопросы поднимались неоднократно


    Doterok,
    26 сен 2012

    #2


  3. Sk1llz
    Ньюфаг

    Сообщения:
    12
    Спасибы:
    0
    Дата начала использования бота:
    1.11.2011

    Не понял ответ «код, факе и прочее
    куда ставил (по 5 строчек снизу с верху)»
    Ps. Просто хочу розобратся


    Sk1llz,
    26 сен 2012

    #3


  4. ViperNight
    ▒▒▒▒▒▒▒▒▒

    Сообщения:
    311
    Спасибы:
    154
    Сборка бота GHost:
    GHost++ r597M
    Дата начала использования бота:
    20.01.2007
    Skype:

    Мой статус

    В файле game_base.cpp нарушен синтаксис, если там поправить, то останется 3 однотипных ошибки с методом, которые исправляются путём передачи в метод первым параметром слово player.

    Код:
    SendChat( player, "~~~~~~~~" );


    ViperNight,
    26 сен 2012

    #4


  5. Synth (LM)
    Пантограф!

    Сообщения:
    2.762
    Спасибы:
    172
    Сборка бота GHost:
    My own version of GhostOne
    Дата начала использования бота:
    15.06.2008
    Skype:

    Мой статус

    неуспел написать…


    Synth (LM),
    26 сен 2012

    #5

(Вы должны войти или зарегистрироваться, чтобы ответить.)

Показать игнорируемое содержимое

Ваше имя или e-mail:
У Вас уже есть учётная запись?

Забыли пароль?
  • Нет, зарегистрироваться сейчас.
  • Да, мой пароль:

Запомнить меня


Warcraft 3 Game Host — Сообщество

  • Искать только в заголовках
Сообщения пользователя:

Имена участников (разделяйте запятой).

Новее чем:
  • Искать только в этой теме
  • Искать только в этом разделе
    • Отображать результаты в виде тем

Быстрый поиск

  • Последние темы

Больше…

0 0 голоса
Рейтинг статьи
Подписаться
Уведомить о
guest

0 комментариев
Старые
Новые Популярные
Межтекстовые Отзывы
Посмотреть все комментарии

А вот еще интересные материалы:

  • Яшка сломя голову остановился исправьте ошибки
  • Ясность цели позволяет целеустремленно добиваться намеченного исправьте ошибки
  • Ясность цели позволяет целеустремленно добиваться намеченного где ошибка
  • Ошибка c1611 hyundai tucson
  • Ошибка c1805 infiniti qx56