Разница между strncmp_P и strncmp_PF на Arduino?

В чем разница между strncmp_P и strncmp_PF на Arduino? Я понимаю strncmp_F, но какова цель strncmp_PF?

1

Решение

В Arduino есть два адресных пространства: SRAM и программная память (Flash).

Вы можете обращаться к памяти программ, используя обычный указатель «ближний» или специальный указатель «дальний», чтобы получить доступ к большему объему памяти, чем это обычно возможно (например, указатели ближних могут получить доступ только к 64 КБ памяти программ на 16-разрядном ЦП).

strncmp_P а также strncmp_PF оба сравниваются со строками в памяти программ (в отличие от strncmp, который сравнивает две строки из SRAM), но strncmp_PF берет дальний указатель, а strncmp_P берет нормальный ближний указатель. Это единственная разница.

2

Другие решения


По вопросам рекламы [email protected]