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

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 33, средняя оценка - 4.76
Edison4
6 / 6 / 0
Регистрация: 23.02.2012
Сообщений: 169
#1

Отсутствует спецификатор типа - предполагается int - C++

21.11.2012, 17:52. Просмотров 4732. Ответов 4
Метки нет (Все метки)

Здравствуйте форумчане!Вот не понимаю возникновение одной ошибки :
При объявлении указатель типа BYTE сыпеться большая куча ошибок:
C++
1
    BYTE *bits;
Ошибка 3 error C4430: отсутствует спецификатор типа - предполагается int. Примечание. C++ не поддерживает int по умолчанию c:\users\edison4\documents\visual studio 2010\projects\e4engine_simple_5\e4engine_simple_5\etexture.h 13 1 E4Engine_Simple_5
Ошибка 4 error C4430: отсутствует спецификатор типа - предполагается int. Примечание. C++ не поддерживает int по умолчанию c:\users\edison4\documents\visual studio 2010\projects\e4engine_simple_5\e4engine_simple_5\etexture.h 13 1 E4Engine_Simple_5
Ошибка 13 error C4430: отсутствует спецификатор типа - предполагается int. Примечание. C++ не поддерживает int по умолчанию c:\users\edison4\documents\visual studio 2010\projects\e4engine_simple_5\e4engine_simple_5\etexture.h 13 1 E4Engine_Simple_5
Ошибка 14 error C4430: отсутствует спецификатор типа - предполагается int. Примечание. C++ не поддерживает int по умолчанию c:\users\edison4\documents\visual studio 2010\projects\e4engine_simple_5\e4engine_simple_5\etexture.h 13 1 E4Engine_Simple_5
Ошибка 18 error C4430: отсутствует спецификатор типа - предполагается int. Примечание. C++ не поддерживает int по умолчанию c:\users\edison4\documents\visual studio 2010\projects\e4engine_simple_5\e4engine_simple_5\etexture.h 13 1 E4Engine_Simple_5
Ошибка 19 error C4430: отсутствует спецификатор типа - предполагается int. Примечание. C++ не поддерживает int по умолчанию c:\users\edison4\documents\visual studio 2010\projects\e4engine_simple_5\e4engine_simple_5\etexture.h 13 1 E4Engine_Simple_5
Ошибка 22 error C4430: отсутствует спецификатор типа - предполагается int. Примечание. C++ не поддерживает int по умолчанию c:\users\edison4\documents\visual studio 2010\projects\e4engine_simple_5\e4engine_simple_5\etexture.h 13 1 E4Engine_Simple_5
Ошибка 23 error C4430: отсутствует спецификатор типа - предполагается int. Примечание. C++ не поддерживает int по умолчанию c:\users\edison4\documents\visual studio 2010\projects\e4engine_simple_5\e4engine_simple_5\etexture.h 13 1 E4Engine_Simple_5
Ошибка 26 error C4430: отсутствует спецификатор типа - предполагается int. Примечание. C++ не поддерживает int по умолчанию c:\users\edison4\documents\visual studio 2010\projects\e4engine_simple_5\e4engine_simple_5\etexture.h 13 1 E4Engine_Simple_5
Ошибка 27 error C4430: отсутствует спецификатор типа - предполагается int. Примечание. C++ не поддерживает int по умолчанию c:\users\edison4\documents\visual studio 2010\projects\e4engine_simple_5\e4engine_simple_5\etexture.h 13 1 E4Engine_Simple_5
Ошибка 33 error C4430: отсутствует спецификатор типа - предполагается int. Примечание. C++ не поддерживает int по умолчанию c:\users\edison4\documents\visual studio 2010\projects\e4engine_simple_5\e4engine_simple_5\etexture.h 13 1 E4Engine_Simple_5
Ошибка 34 error C4430: отсутствует спецификатор типа - предполагается int. Примечание. C++ не поддерживает int по умолчанию c:\users\edison4\documents\visual studio 2010\projects\e4engine_simple_5\e4engine_simple_5\etexture.h 13 1 E4Engine_Simple_5
Ошибка 41 error C4430: отсутствует спецификатор типа - предполагается int. Примечание. C++ не поддерживает int по умолчанию c:\users\edison4\documents\visual studio 2010\projects\e4engine_simple_5\e4engine_simple_5\etexture.h 13 1 E4Engine_Simple_5
Ошибка 42 error C4430: отсутствует спецификатор типа - предполагается int. Примечание. C++ не поддерживает int по умолчанию c:\users\edison4\documents\visual studio 2010\projects\e4engine_simple_5\e4engine_simple_5\etexture.h 13 1 E4Engine_Simple_5
Ошибка 45 error C4430: отсутствует спецификатор типа - предполагается int. Примечание. C++ не поддерживает int по умолчанию c:\users\edison4\documents\visual studio 2010\projects\e4engine_simple_5\e4engine_simple_5\etexture.h 13 1 E4Engine_Simple_5
Ошибка 46 error C4430: отсутствует спецификатор типа - предполагается int. Примечание. C++ не поддерживает int по умолчанию c:\users\edison4\documents\visual studio 2010\projects\e4engine_simple_5\e4engine_simple_5\etexture.h 13 1 E4Engine_Simple_5
Ошибка 2 error C2143: синтаксическая ошибка: отсутствие ";" перед "*" c:\users\edison4\documents\visual studio 2010\projects\e4engine_simple_5\e4engine_simple_5\etexture.h 13 1 E4Engine_Simple_5
Ошибка 12 error C2143: синтаксическая ошибка: отсутствие ";" перед "*" c:\users\edison4\documents\visual studio 2010\projects\e4engine_simple_5\e4engine_simple_5\etexture.h 13 1 E4Engine_Simple_5
Ошибка 17 error C2143: синтаксическая ошибка: отсутствие ";" перед "*" c:\users\edison4\documents\visual studio 2010\projects\e4engine_simple_5\e4engine_simple_5\etexture.h 13 1 E4Engine_Simple_5
Ошибка 21 error C2143: синтаксическая ошибка: отсутствие ";" перед "*" c:\users\edison4\documents\visual studio 2010\projects\e4engine_simple_5\e4engine_simple_5\etexture.h 13 1 E4Engine_Simple_5
Ошибка 25 error C2143: синтаксическая ошибка: отсутствие ";" перед "*" c:\users\edison4\documents\visual studio 2010\projects\e4engine_simple_5\e4engine_simple_5\etexture.h 13 1 E4Engine_Simple_5
Ошибка 32 error C2143: синтаксическая ошибка: отсутствие ";" перед "*" c:\users\edison4\documents\visual studio 2010\projects\e4engine_simple_5\e4engine_simple_5\etexture.h 13 1 E4Engine_Simple_5
Ошибка 40 error C2143: синтаксическая ошибка: отсутствие ";" перед "*" c:\users\edison4\documents\visual studio 2010\projects\e4engine_simple_5\e4engine_simple_5\etexture.h 13 1 E4Engine_Simple_5
Ошибка 44 error C2143: синтаксическая ошибка: отсутствие ";" перед "*" c:\users\edison4\documents\visual studio 2010\projects\e4engine_simple_5\e4engine_simple_5\etexture.h 13 1 E4Engine_Simple_5
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
21.11.2012, 17:52
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Отсутствует спецификатор типа - предполагается int (C++):

Отсутствует спецификатор типа, предполагается int - C++
Строка 13. #include <stdio.h> #include <string> using namespace std; typedef struct coinnum { int coinnumber; void...

В классах - отсутствует спецификатор типа - предполагается int - C++
Добрый день! Помогите, люди добрыеее!!! Есть несколько классов. Вот они: // Z:\programming\classes_cpp\interfaces\Ilib.h ...

в Visual Studio пишет: отсутствует спецификатор типа-предполагается int.C++ не поддерживает int по умолчанию - C++
#include "stdio.h" int factorial(short n); main() { float s, x; short i; int j; scanf("%f", &x); s =...

Error C4430: отсутствует спецификатор типа - предполагается int - C++
ребят только начал осваивать азы на C++, и при свое первой программе натыкнулся на такое... Вот собственно мой код #include...

Ошибка C4430: отсутствует спецификатор типа - предполагается int - C++
error C4430: отсутствует спецификатор типа - предполагается int. Примечание. C++ не поддерживает int по умолчанию. Подскажите как исправить...

Error C4430: отсутствует спецификатор типа - предполагается int - C++
Ошибка: error C4430: отсутствует спецификатор типа - предполагается int. Примечание. C++ не поддерживает int по умолчанию error...

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
David Sylva
1285 / 947 / 51
Регистрация: 17.05.2012
Сообщений: 2,687
21.11.2012, 17:55 #2
код полностью выложи.
ps10n1ck
54 / 48 / 2
Регистрация: 10.11.2010
Сообщений: 132
21.11.2012, 17:59 #3
по всей видимости не подключен заголовочный файл, в котором определен тип BYTE
или подключите файл в котором определен тип, или просто впишите typedef unsigned char BYTE

Добавлено через 56 секунд
http://msdn.microsoft.com/en-us/libr...=vs.85%29.aspx
Edison4
6 / 6 / 0
Регистрация: 23.02.2012
Сообщений: 169
21.11.2012, 18:15  [ТС] #4
У меня есть файл в котором есть все инклуды:
E4Engine
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
#ifndef E4ENGINE_HEADER
#define E4ENGINE_HEADER
#include "E4EMath.h"
#include "EKeyboard.h"
#include "ECube.h"
#include "Camera.h"
#include "SphereBody.h"
#include "BBox.h"
#include "EKeyboard.h"
#include "ETexture.h"
 
#include <cstdlib>
#include <iostream>
#include <math.h>
#include <freeglut.h>
#include <FreeImage.h>
и есть класс текстуры:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
#ifndef ETEXTURE_HEADER
#define ETEXTURE_HEADER
#include "E4Engine.h"
class ETexture
{
public:
 
    ETexture() {};
    ~ETexture() {};
    int Width;
    int Height;
    int bpp;
    GLuint id_texture;
    void LoadFromFile(char* filename);
    void Delete();
    void Draw();
    void SetPosition(float x,float y) ;
};
#endif
и cpp файл
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
#include "E4Engine.h"
 
void ETexture::LoadFromFile(char* filename)
{
    
    FREE_IMAGE_FORMAT fif = FIF_UNKNOWN;
    FIBITMAP* dib(0);
    fif = FreeImage_GetFileType(filename,0);
 
    if (fif == FIF_UNKNOWN)
        fif = FreeImage_GetFIFFromFilename(filename);
 
    if (FreeImage_FIFSupportsReading(fif))
        dib = FreeImage_Load(fif,filename);
 
    Width = FreeImage_GetWidth(dib);
    Height = FreeImage_GetHeight(dib);
 
    bpp = FreeImage_GetBPP(dib);
    glGenTextures(1,&id_texture);
    glBindTexture(GL_TEXTURE_2D,id_texture);
    glTexParameteri( GL_TEXTURE_2D,GL_TEXTURE_MIN_FILTER, GL_LINEAR );
    glTexParameteri( GL_TEXTURE_2D,GL_TEXTURE_MAG_FILTER, GL_LINEAR );
    BYTE *bits = new BYTE[FreeImage_GetWidth(dib) * FreeImage_GetHeight(dib) * 3];
    BYTE *pixels = (BYTE*)FreeImage_GetBits(dib);
    for(int pix=0; pix<FreeImage_GetWidth(dib) * FreeImage_GetHeight(dib); pix++)
    {
        bits[pix*3+0]=pixels[pix*3+2];
        bits[pix*3+1]=pixels[pix*3+1];
        bits[pix*3+2]=pixels[pix*3+0];
    }
    glTexImage2D( GL_TEXTURE_2D, 0, 3,Width, Height, 0, GL_RGB, GL_UNSIGNED_BYTE, bits );
    FreeImage_Unload(dib);
    
}
void ETexture::Draw()
{
    /*
    glMatrixMode( GL_MODELVIEW );
    glEnable(GL_TEXTURE_2D);
    glLoadIdentity();
    glBegin(GL_TRIANGLE_STRIP);
    glBindTexture(GL_TEXTURE_2D, id_texture );  
        glTexCoord2f(0,0);  glVertex2f(0, 60);
        glTexCoord2f(0,1);  glVertex2f(0, 0);
        glTexCoord2f(1,0);  glVertex2f(60, 60);
        glTexCoord2f(1,1);  glVertex2f(60, 0);
    glEnd();
    glDisable(GL_TEXTURE_2D);
    glMatrixMode(GL_PROJECTION);*/
}
void ETexture::Delete()
{
 
}
void ETexture::SetPosition(float x,float y)
{
 
}
И вот метод загрузки :
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
void ETexture::LoadFromFile(char* filename)
{
    
    FREE_IMAGE_FORMAT fif = FIF_UNKNOWN;
    FIBITMAP* dib(0);
    fif = FreeImage_GetFileType(filename,0);
 
    if (fif == FIF_UNKNOWN)
        fif = FreeImage_GetFIFFromFilename(filename);
 
    if (FreeImage_FIFSupportsReading(fif))
        dib = FreeImage_Load(fif,filename);
 
    Width = FreeImage_GetWidth(dib);
    Height = FreeImage_GetHeight(dib);
 
    bpp = FreeImage_GetBPP(dib);
    glGenTextures(1,&id_texture);
    glBindTexture(GL_TEXTURE_2D,id_texture);
    glTexParameteri( GL_TEXTURE_2D,GL_TEXTURE_MIN_FILTER, GL_LINEAR );
    glTexParameteri( GL_TEXTURE_2D,GL_TEXTURE_MAG_FILTER, GL_LINEAR );
    BYTE *bits = new BYTE[FreeImage_GetWidth(dib) * FreeImage_GetHeight(dib) * 3];
    BYTE *pixels = (BYTE*)FreeImage_GetBits(dib);
    for(int pix=0; pix<FreeImage_GetWidth(dib) * FreeImage_GetHeight(dib); pix++)
    {
        bits[pix*3+0]=pixels[pix*3+2];
        bits[pix*3+1]=pixels[pix*3+1];
        bits[pix*3+2]=pixels[pix*3+0];
    }
    glTexImage2D( GL_TEXTURE_2D, 0, 3,Width, Height, 0, GL_RGB, GL_UNSIGNED_BYTE, bits );
    FreeImage_Unload(dib);
    
}
Если внутри метода объявлять эти переменные то все работает не ругается но мне нужно объявить в заголовочном файле а если в нем объявляю летит куча ошибок..
ps10n1ck
54 / 48 / 2
Регистрация: 10.11.2010
Сообщений: 132
21.11.2012, 20:32 #5
попробуйте прописать в файле где у вас все инклуды строчку
C++
1
typedef unsigned char BYTE;
Цитата Сообщение от Edison4 Посмотреть сообщение
У меня есть файл в котором есть все инклуды:
если не ошибаюсь данное определение тянется с windows.h, а там в свою очередь с windef.h (не знаю, эти файлы у вас где-то включаются в проекте, или может где-то определен тип BYTE)

пока вы объявляете в методе класса или в поле такое объявление, или просто где-то в заголовочном файле и не включаете этот файл в проект - транслятору будет глубоко параллельно, что у вас там в классе или файле за "матюки" объявляются, как только включили файл в код,
C++
1
#include "ETexture.h"
или вынесли объявление BYTE *bits; куда-то, где оно доступно транслятору - будут выдаваться ошибки если не будет найден тип BYTE (BYTE не является встроенным типом).
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
21.11.2012, 20:32
Привет! Вот еще темы с ответами:

Одномерный массив (отсутствует спецификатор типа - предполагается int) - C++
Ребят, помогите исправить ошибку такого вида &quot;отсутствует спецификатор типа - предполагается int. Примечание. C++ не поддерживает int по...

Error C4430: отсутствует спецификатор типа - предполагается int - C++
#include &lt;iostream&gt; #include &lt;conio.h&gt; #include &lt;time.h&gt; #include &lt;stdio.h&gt; using namespace std; main() { const int m=5; ...

Error C4430: отсутствует спецификатор типа - предполагается int - как исправить? - C++
Учусь работать с шаблонами. Пишу вот такой просто код и компилятор очень сильно ругается. Что делать? #include &lt;fstream&gt; #include...

Ошибка: "C4430 отсутствует спецификатор типа - предполагается int..." - C++
Гайз, помогите, только начинаю писать на С++, такая ошибка: &quot;C4430 отсутствует спецификатор типа - предполагается int. Примечание. C++ не...


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

Или воспользуйтесь поиском по форуму:
Yandex
Объявления
21.11.2012, 20:32
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru