Форум программистов, компьютерный форум, киберфорум
C для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
 
Рейтинг 4.60/15: Рейтинг темы: голосов - 15, средняя оценка - 4.60
0 / 0 / 0
Регистрация: 07.01.2011
Сообщений: 11

выводит ошибку, но компилирует

06.05.2011, 15:49. Показов 3180. Ответов 27
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Здравствуйте, скорей всего, я что то напутал с обращением


C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
 
#include <stdio.h>
#include <stdlib.h>
 
struct root{
  int name; 
  int i,j; 
  int nl,np; 
  int srubl,srubp;    };
int main(int argc, char *argv[])
{
struct root *M[8][8];
 for(i=0;i<8;i++)
     for(j=0;j<8;j++)
        {           
         (M[i][j])->i=i;
         (M[i][j])->j=j;
        }
}
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
06.05.2011, 15:49
Ответы с готовыми решениями:

Выводит ошибку в структуре
Создать структуру &quot;мобильный телефон&quot;, состоящую из полей - &quot;Номер абонента&quot;(строка из 7 цифр), &quot;Код провайдера&quot;(трехзначное...

Компилятор выводит ошибку : [Error] stray '\361'
#include &lt;stdio.h&gt; //подключаем библиотеку int main() //начинаем программу { int b,i; //вводим переменные b и i типа интегер ...

Тернарный оператор: Почему выводит ошибку lvalue required?
Данный код не компилируется в c99 : /* -------------------------------------------------------------------------- */ #include...

27
 Аватар для Veyron
107 / 107 / 9
Регистрация: 02.06.2009
Сообщений: 578
06.05.2011, 15:54
Цитата Сообщение от ego30 Посмотреть сообщение
struct root *M[8][8];
массив структур объявляется как root *M[8][8]; (имя структуры не надо указывать).
0
0 / 0 / 0
Регистрация: 07.01.2011
Сообщений: 11
06.05.2011, 15:57  [ТС]
Цитата Сообщение от Veyron Посмотреть сообщение
массив структур объявляется как root *M[8][8]; (имя структуры не надо указывать).
убираю struct выдает ошибку E2451 Undefined symbol 'root'
0
Freelance
Эксперт С++
 Аватар для asics
2891 / 1826 / 356
Регистрация: 09.09.2010
Сообщений: 3,841
06.05.2011, 16:00
Veyron, В Си, структурные переменные обявляються с ключевым словом struct, перед названием структуры.
1
 Аватар для Veyron
107 / 107 / 9
Регистрация: 02.06.2009
Сообщений: 578
06.05.2011, 16:02
Цитата Сообщение от asics Посмотреть сообщение
структурные переменные обявляються с ключевым словом struct, перед названием структуры
Не обратил внимания, что это не С++.

А какую ошибку-то выдает?
0
0 / 0 / 0
Регистрация: 07.01.2011
Сообщений: 11
06.05.2011, 16:07  [ТС]
Цитата Сообщение от Veyron Посмотреть сообщение
Не обратил внимания, что это не С++.

А какую ошибку-то выдает?

Access violation at address 00401191. Write of address B2CD4BFC
0
 Аватар для Veyron
107 / 107 / 9
Регистрация: 02.06.2009
Сообщений: 578
06.05.2011, 16:12
не знаю как в Си, но в С++ вроде как объявления для массива могут быть без указателя. То есть:
C++
1
struct root M[8][8];
либо, если надо обращаться через указатели:
C++
1
struct root **M;
0
0 / 0 / 0
Регистрация: 07.01.2011
Сообщений: 11
06.05.2011, 16:14  [ТС]
Цитата Сообщение от Veyron Посмотреть сообщение
не знаю как в Си, но в С++ вроде как объявления для массива могут быть без указателя. То есть:
C++
1
struct root M[8][8];
либо, если надо обращаться через указатели:
C++
1
struct root **M;
мне си нужен, использовал бы с++ то не мучился со структурами а сделал класс.
0
 Аватар для Kastaneda
5232 / 3205 / 362
Регистрация: 12.12.2009
Сообщений: 8,143
Записей в блоге: 2
06.05.2011, 16:22
Цитата Сообщение от ego30 Посмотреть сообщение
C
1
struct root *M[8][8];
Это массив указателей на тип root, а память под объекты не выделена, однако ты пытаешся туда что-то писать. Либо выдели память, либо сделай так:
C
1
struct root M[8][8];
0
 Аватар для Veyron
107 / 107 / 9
Регистрация: 02.06.2009
Сообщений: 578
06.05.2011, 16:23
А попробовать то, что я написал не получилосЬ?
0
0 / 0 / 0
Регистрация: 07.01.2011
Сообщений: 11
06.05.2011, 16:25  [ТС]
та же ошибка
0
Эксперт С++
1069 / 848 / 60
Регистрация: 30.04.2011
Сообщений: 1,659
06.05.2011, 16:27
Цитата Сообщение от ego30 Посмотреть сообщение
та же ошибка
Объявил массив указателей.
А адреса указателям ты присвоил?
0
 Аватар для Kastaneda
5232 / 3205 / 362
Регистрация: 12.12.2009
Сообщений: 8,143
Записей в блоге: 2
06.05.2011, 16:31
C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
#include <stdio.h>
#include <stdlib.h>
 
struct root {
    int name;
    int i,j;
    int nl,np;
    int srubl,srubp;
};
int main(int argc, char *argv[])
{
    int i,j;
    struct root M[8][8];
    for(i=0; i<8; i++)
        for(j=0; j<8; j++) {
            M[i][j].i=i;
            M[i][j].j=j;
        }
}
1
0 / 0 / 0
Регистрация: 07.01.2011
Сообщений: 11
06.05.2011, 16:33  [ТС]
Цитата Сообщение от Kastaneda Посмотреть сообщение
C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
#include <stdio.h>
#include <stdlib.h>
 
struct root {
    int name;
    int i,j;
    int nl,np;
    int srubl,srubp;
};
int main(int argc, char *argv[])
{
    int i,j;
    struct root M[8][8];
    for(i=0; i<8; i++)
        for(j=0; j<8; j++) {
            M[i][j].i=i;
            M[i][j].j=j;
        }
}
Спасибо ! Помоги !

Добавлено через 23 секунды
Спасибо всем ! Тему думаю можно закрывать !
0
 Аватар для Kastaneda
5232 / 3205 / 362
Регистрация: 12.12.2009
Сообщений: 8,143
Записей в блоге: 2
06.05.2011, 16:33
Цитата Сообщение от ego30 Посмотреть сообщение
Помоги !
Так помог же, этот код компилируется!
0
быдлокодер
 Аватар для kravam
1724 / 911 / 106
Регистрация: 04.06.2008
Сообщений: 5,705
06.05.2011, 16:34
Ребята, а чё огород городить на пустом месте? Имеется двумерная матрица элементов, тип которых известен. Матрица эта ни в какую функцию не передаётся, следовательно, про указатель на неё забываем.
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
#include <stdio.h>
#include <stdlib.h>
 
struct root{
  int name; 
  int i,j; 
  int nl,np; 
  int srubl,srubp;    
};
 
int main(int argc, char *argv[]){
 
 root M[8][8];
 for(int i=0;i<8;i++)
   for(int j=0;j<8;j++) {           
    (M[i][j]).i=i; 
    (M[i][j]).j=j;
   }
}
0
0 / 0 / 0
Регистрация: 07.01.2011
Сообщений: 11
06.05.2011, 16:34  [ТС]
Цитата Сообщение от Kastaneda Посмотреть сообщение
Так помог же, этот код компилируется!
ой )) Спасибо ! Помогли ))
0
быдлокодер
 Аватар для kravam
1724 / 911 / 106
Регистрация: 04.06.2008
Сообщений: 5,705
06.05.2011, 16:35
о, я плагиатчик оказывается
0
0 / 0 / 0
Регистрация: 07.01.2011
Сообщений: 11
06.05.2011, 16:37  [ТС]
Цитата Сообщение от kravam Посмотреть сообщение
Ребята, а чё огород городить на пустом месте? Имеется двумерная матрица элементов, тип которых известен. Матрица эта ни в какую функцию не передаётся, следовательно, про указатель на неё забываем.
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
#include <stdio.h>
#include <stdlib.h>
 
struct root{
  int name; 
  int i,j; 
  int nl,np; 
  int srubl,srubp;    
};
 
int main(int argc, char *argv[]){
 
 root M[8][8];
 for(int i=0;i<8;i++)
   for(int j=0;j<8;j++) {           
    (M[i][j]).i=i; 
    (M[i][j]).j=j;
   }
}
Но мне потом этот массив нужно будет вставлять в функцию
0
быдлокодер
 Аватар для kravam
1724 / 911 / 106
Регистрация: 04.06.2008
Сообщений: 5,705
06.05.2011, 16:59
Потом будет потом. Да там просто. Объявишь функцию, которая принимает соответствующий указатель, объявишь указатель, инициализируешь его нужным значением- и вуаля- передашь в функцию!

Добавлено через 14 минут
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
#include <stdio.h>
#include <stdlib.h>
 
struct root{
  int name; 
  int i,j; 
  int nl,np; 
  int srubl,srubp;    
};
 
void f (root** p) {
 //Вот твоя функция, делай тут чё хочешь!!!!!!!!!!!!!!!!!!!
 p[4][4].i= 98; 
}
       
 
int main(int argc, char *argv[]){
 
 root** M;
 for (int i= 0; i< 8; i++) 
  M[i]= new root [8];
 
 for(int i=0;i<8;i++)
   for(int j=0;j<8;j++) {           
    (M[i][j]).i=i; 
    (M[i][j]).j=j;
   }
 
 f (M);
 
 printf ("%d\n", M[4][4].i);
 getchar ();
 
 for (int i= 0; i< 8; i++) 
  delete [] M[i];
 
 
}
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
06.05.2011, 16:59
Помогаю со студенческими работами здесь

Компилирует в Dev C++, выдает ошибку в 12 студии
Компилируется в Dev C++, выдает ошибку в 12 студии, в чем дело? #include &quot;stdafx.h&quot; #include &lt;iostream&gt; #include &lt;conio.h&gt; ...

Почему не компилирует слова по русски, а выводит иероглифы какието? что для этого сделать надо?
Почему не компилирует слова по русски, а выводит иероглифы какието? что для этого сделать надо?

Code::Blocks в определенном проекте не компилирует "tr1/shared_ptr.h", при этом в другом проекте компилирует!
Здравствуйте, хотел бы попросить у вас помощи. Пытаюсь написать простой платформер на C++, и в определенный момент мне понадобился...

Выводит ошибку
Type Frac=record{оголошення запису Frac} P:integer; Q:1..32767; var A:array of Drob;{масив векторів} procedure...

Выводит ошибку Next Without For
Подскажите пож. почему первый Next выдает ошибку Next Without For . Пробовала поменять местами next i endif не помогло. Sub zad7() ...


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

Или воспользуйтесь поиском по форуму:
20
Ответ Создать тему
Новые блоги и статьи
Перемещение выделенных строк ТЧ из одного документа в другой
Maks 31.03.2026
Реализация из решения ниже выполнена на примере нетипового документа "ВыдачаОборудованияНаСпецтехнику" с единственной табличной частью "ОборудованиеИКомплектующие" разработанного в конфигурации КА2. . . .
Functional First Web Framework Suave
DevAlt 30.03.2026
Sauve. IO Апнулись до NET10. Из зависимостей один пакет, работает одинаково хорошо как в режиме проекта так и в интерактивном режиме. из сложностей - чисто функциональный подход. Решил. . .
Автоматическое создание документа при проведении другого документа
Maks 29.03.2026
Реализация из решения ниже выполнена на нетиповых документах, разработанных в конфигурации КА2. Есть нетиповой документ "ЗаявкаНаРемонтСпецтехники" и нетиповой документ "ПланированиеСпецтехники". В. . .
Настройка движения справочника по регистру сведений
Maks 29.03.2026
Решение ниже реализовано на примере нетипового справочника "ТарифыМобильнойСвязи" разработанного в конфигурации КА2, с целью учета корпоративной мобильной связи в коммерческом предприятии. . . .
Автозаполнение реквизита при выборе элемента справочника
Maks 27.03.2026
Программный код из решения ниже на примере нетипового документа "ЗаявкаНаРемонтСпецтехники" разработанного в конфигурации КА2. При выборе "Спецтехники" (Тип Справочник. Спецтехника), заполняется. . .
Сумматор с применением элементов трёх состояний.
Hrethgir 26.03.2026
Тут. https:/ / fips. ru/ EGD/ ab3c85c8-836d-4866-871b-c2f0c5d77fbc Первый документ красиво выглядит, но без схемы. Это конечно не даёт никаких плюсов автору, но тем не менее. . . всё может быть. . .
Автозаполнение реквизитов при создании документа
Maks 26.03.2026
Программный код из решения ниже размещается в модуле объекта документа, в процедуре "ПриСозданииНаСервере". Алгоритм проверки заполнения реализован для исключения перезаписи значения реквизита,. . .
Команды формы и диалоговое окно
Maks 26.03.2026
1. Команда формы "ЗаполнитьЗапчасти". Программный код из решения ниже на примере нетипового документа "ЗаявкаНаРемонтСпецтехники" разработанного в конфигурации КА2. В качестве источника данных. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru