Цитата
Цитата
static - если переменная локальная т.е. объявлена в какой либо функции и не должна сохранять свое значение до следующего вызова этой функции.
стоит ли верить выше изложенному (нашел в гугле, сайте [banned])
Не стоит, т.к. относительно ключевого слова static, все с точностью до наоборот.
static переменная хранит свое значение и до входа в функцию и после как и любая глобальная переменная, т.к. под нее резервируется место в сегменте данных точно также как и для глобальных переменных. Разница между статической и глобальной переменной состоит в том, что использовать статическую переменную можно лишь только в функции/модуле где она объявлена, а глобальную - везде (в сочетании с extern).
Цитата
а если вместо static char я использую просто char - у меня не работет. это значит что при выходе из функции обр прерывания - она (переменная) обнуляется что-ли?
Если не поставить static, то место под переменную будет выделяться в стеке автоматически при каждом входе в функцию, и освобождаться перед выходом из функции. Тобиш переменная существует только внутри функции - вышли из функции - переменная пропала, память которая под нее выделалась, будет использоваться для чего-то другого.