I've written several lexers in C-like languages, it's not that painful. I wouldn't dare write a parser though.