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

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

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

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

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

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


Закрытая тема
Опции темы
Непрочитано 23.08.2012, 16:17   #811
dosikus
Гуру портала
 
Аватар для dosikus
 
Регистрация: 20.11.2004
Сообщений: 10,015
Сказал спасибо: 936
Сказали Спасибо 2,268 раз(а) в 1,563 сообщении(ях)
dosikus на пути к лучшему
По умолчанию Re: Уроки СИ для AVR микроконроллеров

Сообщение от Yurkin2007 Посмотреть сообщение
У Вас параметр data есть указатель на char, а совсем не массив. А какой размер переменной типа указатель? 4 байта в лучшем случае.
Нужно передавать ссылку на массив
Вредитель ...
А скажите - что есть имя массива ????
Реклама:
__________________
Осторожно , злой кот
dosikus вне форума  
Непрочитано 23.08.2012, 16:23   #812
Yurkin2007
Заблокирован
 
Регистрация: 27.03.2007
Сообщений: 1,328
Сказал спасибо: 12
Сказали Спасибо 576 раз(а) в 460 сообщении(ях)
Yurkin2007 на пути к лучшему
По умолчанию Re: Уроки СИ для AVR микроконроллеров

Сообщение от dosikus Посмотреть сообщение
А скажите - что есть имя массива ????
Вы это уже с ИзиРайдером обсуждали !
Тут, может, некая путаница имеет место. У автора массив и формальный параметр имеют одинаковые имена, являясь по сути разными типами переменных ...

Последний раз редактировалось Yurkin2007; 23.08.2012 в 16:26.
Yurkin2007 вне форума  
Непрочитано 23.08.2012, 16:27   #813
dosikus
Гуру портала
 
Аватар для dosikus
 
Регистрация: 20.11.2004
Сообщений: 10,015
Сказал спасибо: 936
Сказали Спасибо 2,268 раз(а) в 1,563 сообщении(ях)
dosikus на пути к лучшему
По умолчанию

Сообщение от Yurkin2007 Посмотреть сообщение
Вы это уже с ИзиРайдером обсуждали !
Ну и что вы вынесли из того обсуждения ?
У человека правильное определение было , зачем с толку сбивать ?
Аргумент функции указатель на char , имя массива и есть указатель на первый элемент массива типа char ...

Сообщение от Yurkin2007 Посмотреть сообщение
Тут, может, некая путаница имеет место.
Это у вас путаница . Читайте о видимости переменных , указателях и типах...
__________________
Осторожно , злой кот

Последний раз редактировалось dosikus; 23.08.2012 в 16:34.
dosikus вне форума  
Непрочитано 23.08.2012, 16:39   #814
papa_n
Временная регистрация
 
Регистрация: 08.01.2007
Сообщений: 92
Сказал спасибо: 17
Сказали Спасибо 9 раз(а) в 9 сообщении(ях)
papa_n на пути к лучшему
По умолчанию Re: Уроки СИ для AVR микроконроллеров

Рано радовался(((
Ошибка в строке
[HTML]len=sizeof(data);[/HTML]

Error: D:\Project_CV_encode\main.c(81): incomplete type is not allowed?
papa_n вне форума  
Непрочитано 23.08.2012, 16:41   #815
Yurkin2007
Заблокирован
 
Регистрация: 27.03.2007
Сообщений: 1,328
Сказал спасибо: 12
Сказали Спасибо 576 раз(а) в 460 сообщении(ях)
Yurkin2007 на пути к лучшему
По умолчанию Re: Уроки СИ для AVR микроконроллеров

Я толкую вот о чём
Код:
char myArray[10];
char* myPtr = myArray;

printf("%d\n", sizeof(myArray)) // prints 10 
printf("%d\n", sizeof(myPtr)); // prints 4 (on a 32-bit machine)
Yurkin2007 вне форума  
Непрочитано 23.08.2012, 16:45   #816
Yurkin2007
Заблокирован
 
Регистрация: 27.03.2007
Сообщений: 1,328
Сказал спасибо: 12
Сказали Спасибо 576 раз(а) в 460 сообщении(ях)
Yurkin2007 на пути к лучшему
По умолчанию Re: Уроки СИ для AVR микроконроллеров

Сообщение от papa_n Посмотреть сообщение
Рано радовался(((
Это потому, что Ваш компилятор вычисляет значение sizeof на этапе компиляции и заменяет выражение sizeof на полученную константу.
В Вашем случае компилятор не может определить, какой размер будет у массива, т.к. размер будет известен только при вызове функции при выполнении программы.
Придётся Вам определять размер снаружи и передавать, как дополнительный параметр ...
Yurkin2007 вне форума  
Непрочитано 23.08.2012, 17:19   #817
tempora
Почётный гражданин KAZUS.RU
 
Регистрация: 10.01.2007
Сообщений: 3,412
Сказал спасибо: 65
Сказали Спасибо 664 раз(а) в 443 сообщении(ях)
tempora на пути к лучшему
По умолчанию Re: Уроки СИ для AVR микроконроллеров

Сообщение от Yurkin2007 Посмотреть сообщение
Я толкую вот о чём
Код:
printf("%d\n", sizeof(myArray)) // prints 10
Упорствуете в своей ошибке, ведь говорил уже, что смысл у sizeof другой, не количество элементов массива.
__________________
There's always more than one way to skin a cat.
tempora вне форума  
Непрочитано 23.08.2012, 17:22   #818
tempora
Почётный гражданин KAZUS.RU
 
Регистрация: 10.01.2007
Сообщений: 3,412
Сказал спасибо: 65
Сказали Спасибо 664 раз(а) в 443 сообщении(ях)
tempora на пути к лучшему
По умолчанию Re: Уроки СИ для AVR микроконроллеров

Сообщение от Yurkin2007 Посмотреть сообщение
компилятор не может определить, какой размер будет у массива, т.к. размер будет известен только при вызове функции при выполнении программы.
И это ошибка - размер массива, в рассматриваемом случае, известен на этапе компиляции.
__________________
There's always more than one way to skin a cat.
tempora вне форума  
Непрочитано 23.08.2012, 17:46   #819
Yurkin2007
Заблокирован
 
Регистрация: 27.03.2007
Сообщений: 1,328
Сказал спасибо: 12
Сказали Спасибо 576 раз(а) в 460 сообщении(ях)
Yurkin2007 на пути к лучшему
По умолчанию Re: Уроки СИ для AVR микроконроллеров

Сообщение от tempora Посмотреть сообщение
смысл у sizeof другой, не количество элементов массива.
Ну, дык, просветите меня, пожалуйста, если это, конечно, не военная тайна!
Yurkin2007 вне форума  
Непрочитано 23.08.2012, 17:49   #820
Yurkin2007
Заблокирован
 
Регистрация: 27.03.2007
Сообщений: 1,328
Сказал спасибо: 12
Сказали Спасибо 576 раз(а) в 460 сообщении(ях)
Yurkin2007 на пути к лучшему
По умолчанию Re: Уроки СИ для AVR микроконроллеров

Сообщение от tempora Посмотреть сообщение
И это ошибка - размер массива, в рассматриваемом случае, известен на этапе компиляции.
Размер массива data[] известен. Размер передавемого функции параметра data[] неизвестен.

Последний раз редактировалось Yurkin2007; 23.08.2012 в 18:05.
Yurkin2007 вне форума  
Закрытая тема

Закладки


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

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

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

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Видео уроки dosikus Микроконтроллеры, АЦП, память и т.д 61 23.01.2012 21:06
Видео уроки (flash) Proteus 7.1 fmssp Proteus 5 13.08.2007 03:56
AVR уроки Рюмика chipic128 Proteus, KiCAD и другие ECAD 9 07.03.2007 21:46
уроки от LABCENTRE(PIC12F675+C) dosikus Микроконтроллеры, АЦП, память и т.д 22 09.10.2006 10:16


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


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