С Новым годом! Форум программистов, компьютерный форум, киберфорум
Наши страницы

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

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 16, средняя оценка - 4.88
ASCII
90 / 63 / 10
Регистрация: 15.12.2013
Сообщений: 407
Завершенные тесты: 2
#1

Error C2059: Синтаксическая ошибка: тип - C++

15.07.2014, 01:15. Просмотров 2824. Ответов 1
Метки нет (Все метки)

Вот отрывок кода, указывает, что ошибка на 5ой и 16ой строке, то есть функция min и max.

ошибка:
1>c:\users\андрей\documents\visual studio 2010\projects\sb\sb\data.c(5): error C2059: синтаксическая ошибка: тип
1>c:\users\андрей\documents\visual studio 2010\projects\sb\sb\data.c(16): error C2059: синтаксическая ошибка: тип

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
static int min(int a, int b)
{
    return a < b ? a : b;
}
 
static int minCoord(int Coord[4])
{
    int minimalCoord1 = min(Coord[0], Coord[1]), minimalCoord2 = min(Coord[2], Coord[3]);
    return minimalCoord1 < minimalCoord2 ? minimalCoord1 - 1 : minimalCoord2 - 1;
}
 
static int max(int a, int b)
{
    return a > b ? a : b;
}
 
static int maxCoord(int Coord[4])
{
    int maxCoord1 = max(Coord[0], Coord[1]), maxCoord2 = max(Coord[2], Coord[3]);
    return maxCoord1 > maxCoord2 ? maxCoord1 - 1 : maxCoord2 - 1;
}
а вот полный код:

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
122
123
124
125
126
127
128
129
#include <stdio.h>
#include <stdlib.h>
#include "data.h"
 
static int min(int a, int b)
{
    return a < b ? a : b;
}
 
static int minCoord(int Coord[4])
{
    int minimalCoord1 = min(Coord[0], Coord[1]), minimalCoord2 = min(Coord[2], Coord[3]);
    return minimalCoord1 < minimalCoord2 ? minimalCoord1 - 1 : minimalCoord2 - 1;
}
 
static int max(int a, int b)
{
    return a > b ? a : b;
}
 
static int maxCoord(int Coord[4])
{
    int maxCoord1 = max(Coord[0], Coord[1]), maxCoord2 = max(Coord[2], Coord[3]);
    return maxCoord1 > maxCoord2 ? maxCoord1 - 1 : maxCoord2 - 1;
}
 
 
int PositionShips(int string[4], int column[4], int Arr[][10])
{
    register int i, freeCell, lenShip, zone;
 
    // Если корабль однопалубный
 
    if( !column[1] && !string[1] )
    {
        if( !Arr[string[0] - 1][column[0] - 1])
        {
            Arr[(string[0] - 1)][(column[0] - 1)] = 1;
 
            // Выставляем запретную зону для расстановки кораблей вблизи только что установленного.
        
            for( i = 2; i >= 0; i-- )
                for( freeCell = 2; freeCell >= 0; freeCell-- )
                    if( Arr[( string[0] - i )][(column[0] - freeCell)] != 1 )
                        Arr[( string[0] - i )][(column[0] - freeCell)] = -1;
            return 1;
        }
        // ..........................
    }
 
    // #############################
 
    // Если корабль вертикальный
 
    if( column[0] && !column[1] )
    {
        // Проверка длины корабля
 
        lenShip = 0;
        while(string[lenShip]) lenShip++;
 
        for( i = 0, freeCell = 0; i < 4; i++ )
        {
            if( !Arr[ ( string[i] - 1 ) ][ ( column[0] - 1 ) ] ) freeCell++;
        }
 
        if( freeCell == lenShip)
        {
            for( i = 0; i < 4; i++ ) Arr[ ( string[i] - 1 ) ][ ( column[0] - 1 ) ] = 1;
 
            // Выставляем запретную зону для расстановки кораблей вблизи только что установленного.
 
 
            for(i = 0; i < lenShip; i++)
                for(freeCell = 0; freeCell <= 2; freeCell++)
                    if(Arr[string[i] - 1][column[0] - freeCell] != 1)
                        Arr[string[i] - 1][column[0] - freeCell] = -1;
 
            for(i = 0; i < 3; i++)
                Arr[minCoord(string) - 1][column[0] - freeCell] = -1;
 
            for(i = 0; i < 3; i++)
                Arr[maxCoord(string)][column[0] - freeCell] = -1;
 
            // ..........................
 
            return 1;
        }
        else
            return -1;          
        
    }
 
    // #############################
 
 
    // Если корабль горизонтальный
 
    if( string[0] && !string[1] )
    {
        lenShip = 0;
        while(column[lenShip]) lenShip++;
 
        for( i = 0, freeCell = 0; i < 4; i++ )
        {
            if( !Arr[ ( string[0] - 1 ) ][ ( column[i] - 1 ) ] ) freeCell++;
        }
 
        if( freeCell == lenShip)
        {
            for( i = 0; i < 4; i++ ) Arr[ ( string[0] - 1 ) ][ ( column[i] - 1 ) ] = 1;
            return 1;
        }
        else
            return -1;
 
        // Выставляем запретную зону для расстановки кораблей вблизи только что установленного.
 
        for( i = 2; i >= 0; i-- )
            for( freeCell = lenShip + 2; freeCell >= 0; freeCell-- )
                if( Arr[( string[0] - i )][(column[0] - freeCell)] != 1 )
                    Arr[( string[0] - i )][(column[0] - freeCell)] = -1;
 
        // ..........................
    }
 
    // #############################
 
}
Добавлено через 33 минуты
Кажется это были глюки VS 2010, написал большими буквами функции Min и Maх и все нормально стало, а может и перегрузил какую-то функцию из стандартной либы
0
Лучшие ответы (1)
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
15.07.2014, 01:15
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Error C2059: Синтаксическая ошибка: тип (C++):

Error C2059: синтаксическая ошибка: if - C++
Впервые с таким столкнулся: // proc_db.h #ifndef PROC_DB #define PROC_DB #include &lt;stdio.h&gt;

Error C2059: синтаксическая ошибка: [ - C++
Не понимаю, почему выдает такую ошибку... Подскажите, что не так, если не сложно, заранее спасибо! void vipusk_krakena(int* Massiv,...

Error C2059: синтаксическая ошибка: else - C++
У меня проблема в этом коде , подскажите пожалуйста что нужно исправлять вот сам код #include &lt;iostream&gt; #include &lt;cmath&gt; ...

Синтаксическая ошибка: Ошибка 1 error C2059 - C++
#include &lt;iostream&gt; using namespace std; class Cat { public:

Error C2760: синтаксическая ошибка / Fatal error C1004: непредвиденное обнаружение конца файла - C++
Набыдлокодил следующее: Graph.h template&lt;class D&gt; class Graph { private: class Edge { private: int v1, v2;

Компилятор выдаёт ошибку error C2059: syntax error : '}' - C++
Компилятор visual studio 2010 выдаёт ошибку error C2059: syntax error : '}' в строке 91. Самая последняя строка #include &lt;iostream&gt; ...

1
EVP
390 / 246 / 43
Регистрация: 14.12.2010
Сообщений: 472
15.07.2014, 01:31 #2
Лучший ответ Сообщение было отмечено автором темы, экспертом или модератором как ответ
Цитата Сообщение от ASCII Посмотреть сообщение
Кажется это были глюки VS 2010, написал большими буквами функции Min и Maх и все нормально стало, а может и перегрузил какую-то функцию из стандартной либы
Потому что гладиолус.
1
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
15.07.2014, 01:31
Привет! Вот еще темы с ответами:

error C2061: синтаксическая ошибка: идентификатор - C++
Вот такая ошибка: error C2061: синтаксическая ошибка: идентификатор using namespace std;...

Error C2059: syntax error : 'constant' - C++
Подскажите пожалуйста почему выдает ошибку error C2059: syntax error : 'constant' в этой строке : const int OK=0, EOS=0, ERROR=0; ...

Error C2059 - C++
Я второй день занимаюсь по курсам, вот решил попрактиковаться набрать программу формул умножения и такая ошибка, (C2059) работаю в visual...

Error C2589 и error C2059 - C++
Не могу никак исправить ошибку в последней сточке #include &quot;stdafx.h&quot; #include &lt;iostream&gt; #include &lt;algorithm&gt; #include &lt;random&gt;...


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

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

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