Код: Выделить всё
#pragma pack(push, 1)
union char_to_long {
struct {
char c1;
char c2;
char c3;
char c4;
} chars;
long int value;
}
#pragma pack(pop)Код: Выделить всё
#pragma pack(push, 1)
union char_to_long {
struct {
char c1;
char c2;
char c3;
char c4;
} chars;
long int value;
}
#pragma pack(pop)Код: Выделить всё
#include <tiny2313a.h>
volatile char counter=0;
Ух ты, как на летел то, а не что, если в cvavr пишется именно void main(void)?KorbenDallas писал(а):3. Заодно исправить грубую ошибку с типом возвращаемого значения функции `main`: не `void`, а `int`.
А что, если есть какая-то функция, которая принимает тип char, знаковый тип, а теперь попробуйте затрамбовать ваш long int в эту функцию и желательно за один заход, учитывая знак (условие, функцию нельзя переписывать)?KorbenDallas писал(а):6. Готово!
вам пытались указать на то, что изменение типа переменной недостаточно, потому как переменная нового типа, переданная в неизмененную функцию (вы ведь не предлагали изменить исходник где-то еще), не даст никакого видимого результата - в функцию, которая ждет char даже из переменной long int больше 255 передать не выйдет.KorbenDallas писал(а):Если функция принимает тип char, то она принимает тип char. Ни о чем другой речи и быть не может. (По-прежнему, однако, не ясно, что это делает в этой теме и какое отношение имеет к заданному вопросу.)
вас совет из категории "не перебегай ЗДЕСЬ через дорогу - это опасно", хотя на самом деле правильный совет слово "здесь" должен исключить. а так да, в конкретно этом случае по-вашему сделать можно. но наивно полагать, что это чему-либо кого-либо может научить, т.е. исключить повторение проблемы в будущем.KorbenDallas писал(а):Мой "совет" - единственно возможный ответ на поставленный вопрос, даже (!) если принимать во внимание некие выдуманные "функции".
Код: Выделить всё
char var;
void foo(char x){
printf("%d", x);
}
int main(void){
var = 1;
while(var++) foo(var);
}потому что истина не должна меняться от сообщения к сообщениюKorbenDallas писал(а):непрерывно дылдонит одно и то же по кругу из сообщения в сообщение