http://cboard.cprogramming.com/c-programming/159265-multiple-operator-usages.html#post1178251