Реклама на сайте English version  DatasheetsDatasheets

KAZUS.RU - Электронный портал. Принципиальные схемы, Datasheets, Форум по электронике

Новости электроники Новости Литература, электронные книги Литература Документация, даташиты Документация Поиск даташитов (datasheets)Поиск PDF
  От производителей
Новости поставщиков
В мире электроники

  Сборник статей
Электронные книги
FAQ по электронике

  Datasheets
Поиск SMD
Он-лайн справочник

Принципиальные схемы Схемы Каталоги программ, сайтов Каталоги Общение, форум Общение Ваш аккаунтАккаунт
  Каталог схем
Избранные схемы
FAQ по электронике
  Программы
Каталог сайтов
Производители электроники
  Форумы по электронике
Помощь проекту

Микроконтроллеры, АЦП, память и т.д Темы касающиеся микроконтроллеров разных производителей, памяти, АЦП/ЦАП, периферийных модулей...

 
Опции темы
Непрочитано 09.06.2010, 13:10  
yellow87
Вид на жительство
 
Аватар для yellow87
 
Регистрация: 29.04.2007
Адрес: Иркутск
Сообщений: 311
Сказал спасибо: 0
Сказали Спасибо 12 раз(а) в 12 сообщении(ях)
yellow87 на пути к лучшему
По умолчанию Ошибки компиляции в MPLAB

Пытаюсь создать константное соответствие букв и чисел.
struct perevod{char symbol; int cod;};
const perevod slovar[6]={
{'S', 32},
{'O', 56},
{'E', 90},
{'M', 18},
{'T', 52},
{' ', 95}
};

Компилятор ваыдаёт сотню однотипных ошибок, типа: Expecting a declaration
Причём в BorlandC++3.0 всё компилируется нормально и программа работает.
А тут как?
Реклама:
yellow87 вне форума  
Непрочитано 09.06.2010, 13:39  
urry
Почётный гражданин KAZUS.RU
 
Аватар для urry
 
Регистрация: 06.02.2007
Сообщений: 1,340
Сказал спасибо: 3
Сказали Спасибо 106 раз(а) в 66 сообщении(ях)
urry на пути к лучшему
По умолчанию Re: Ошибки компиляции в MPLAB

Не знаю, что у Вас за компилятор. А так ?
Код:
typedef struct
{
 char symbol;
 char cod;
}perevod;
const perevod slovar[6]={{'S', 32},
{'O', 56},
{'E', 90},
{'M', 18},
{'T', 52},
{' ', 95}};
__________________
warez
urry вне форума  
Непрочитано 09.06.2010, 13:43  
mrKirill
Вид на жительство
 
Аватар для mrKirill
 
Регистрация: 12.04.2007
Сообщений: 348
Сказал спасибо: 2
Сказали Спасибо 36 раз(а) в 32 сообщении(ях)
mrKirill на пути к лучшему
По умолчанию Re: Ошибки компиляции в MPLAB

Сообщение от yellow87 Посмотреть сообщение
Expecting a declaration
Дословно "Ожидается объявление"...
Так как в BorlandC++ это нормально компилится, а тут с нет, вывод - читайте Help по особенностям объявления массивов/структур для Вашего компилятора...
__________________
Гидравлика + электроника = POWER
mrKirill вне форума  
Непрочитано 09.06.2010, 13:53  
testerplus
Прописка
 
Регистрация: 26.01.2009
Сообщений: 249
Сказал спасибо: 23
Сказали Спасибо 102 раз(а) в 61 сообщении(ях)
testerplus на пути к лучшему
По умолчанию Re: Ошибки компиляции в MPLAB

Код:
struct perevod{char symbol; int cod;};
const struct perevod slovar[6]={
			{'S', 32},
			{'O', 56},
			{'E', 90},
			{'M', 18},
			{'T', 52},
			{' ', 95}
		};
А чтобы не возникало таких вопросов, нужно пользоваться typedef
testerplus вне форума  
Непрочитано 09.06.2010, 18:22  
realid
Супер-модератор
 
Аватар для realid
 
Регистрация: 15.10.2007
Сообщений: 3,530
Сказал спасибо: 172
Сказали Спасибо 1,560 раз(а) в 810 сообщении(ях)
realid на пути к лучшему
По умолчанию Re: Ошибки компиляции в MPLAB

Сообщение от testerplus Посмотреть сообщение
А чтобы не возникало таких вопросов, нужно пользоваться typedef
+1000!...............
realid вне форума  
Непрочитано 09.06.2010, 18:27  
yellow87
Вид на жительство
 
Аватар для yellow87
 
Регистрация: 29.04.2007
Адрес: Иркутск
Сообщений: 311
Сказал спасибо: 0
Сказали Спасибо 12 раз(а) в 12 сообщении(ях)
yellow87 на пути к лучшему
По умолчанию Re: Ошибки компиляции в MPLAB

Получилось и по первому совету и по второму!
И ещё вот так компилиться:
struct perevod{char symbol; int cod;}
slovar[6]= {
'S', 326,
'O', 565,
'E', 904,
'M', 188,
'T', 527,
' ', 955
};

Так даже скобок меньше. Ну да ладно. Всем спасибо за рабочие ответы.
Дальше простое дело:
Есть у меня какой-то символ, я определяю в цикле его совпадение с symbol и если совпадает, то знаю числовой код. А как этот код из функции определения вернуть в виде строки? IntToStr
yellow87 вне форума  
Непрочитано 09.06.2010, 21:02  
AJScorp
Почётный гражданин KAZUS.RU
 
Аватар для AJScorp
 
Регистрация: 10.05.2005
Адрес: Саратов.ru
Сообщений: 1,548
Сказал спасибо: 384
Сказали Спасибо 737 раз(а) в 417 сообщении(ях)
AJScorp на пути к лучшему
По умолчанию Re: Ошибки компиляции в MPLAB

Сообщение от yellow87 Посмотреть сообщение
И ещё вот так компилиться
Как уже сказали выше, через объявление типа правильнее, и с переносимостью проблем не будет.

Сообщение от yellow87 Посмотреть сообщение
как этот код из функции определения вернуть в виде строки?
В виде строки - если имеется в виду "Null-terminated string", то только через указатель на глобальный массив, либо возвращаете сам код в виде charа, а \0 добавляете потом, в другом месте.

Последний раз редактировалось AJScorp; 09.06.2010 в 21:36.
AJScorp вне форума  
 

Закладки
Опции темы

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
"Лабораторный" источник питания, есть ли ошибки в схеме? soladko Источники питания и свет 38 06.09.2010 10:37
Програмирование на PIC в MPLAB IDE v8.46 CAH9IForeve Микроконтроллеры, АЦП, память и т.д 3 26.03.2010 16:59
MPLAB C Compiler for PIC24 dsPIC avr123-nm-ru Микроконтроллеры, АЦП, память и т.д 4 25.11.2009 22:53
Ошибка при компиляции Flowcode 3 проекта alexander70 Микроконтроллеры, АЦП, память и т.д 1 06.10.2009 17:56
Mplab + Matlab/Simulink Luzkov Proteus, KiCAD и другие ECAD 0 07.03.2007 14:48


Часовой пояс GMT +4, время: 20:58.


Powered by vBulletin® Version 3.8.4
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd. Перевод: zCarot