Поясню.
Без макросов (которые, кстати, просто-напросто тупо заменяют текст), Ваш код будет выглядеть примерно так:
Код: Выделить всё
for(i=0;i<8;i++){
x##i();
y##i();
}
Код: Выделить всё
for(i=0;i<8;i++){
x##i();
y##i();
}
Аlex писал(а):Как Вы думаете, что произойдёт
Код: Выделить всё
for(i=0;i<8;i++){
xi();
yi();
}
Аlex писал(а):Символом "##"строки объединяются на этапе компиляции препроцессором, а не на этапе выполнения программы
Код: Выделить всё
void x0();
void x1();
//...
int main (void)
{
void(*array[2])();
array[0] = x0;
array[1] = x1;
for(unsigned char i = 0; i < 2; i++)
{
array[i]();
}
return 0;
}Код: Выделить всё
void x0(), x1(), x2(), x3(), x4(), x5(), x6(), x7(), x8();
void(*array[])() = {x0, x1, x2, x3, x4, x5, x6, x7, x8};
........
........
for( i = 0; i < 8; i++){
array[i]();
}
?символ,который я записал дисплей
Аlex писал(а):Вопрос немного непонятен. Что означает фраза?символ,который я записал дисплей
Какой Вы символ хотите вывести ?
Сериг писал(а):Я могу в функции sprintf() вывести содержимое ячейки 9?