Si según el libro el operador && deja de evaluarse cuando un valor es FALSE y retorna FALSE, es de suponer que el || hará lo mismo cuando se encuentre con un TRUE. Ahora bien, no sé qué dice la especificación de C sobre esto, o si lo deja al libre albedrío del compilador. En este caso lo mejor que puedes hacer es comprobarlo con varios compiladores, a ver cómo se comportan o, en caso de duda, asumir que evalúa la expresión completa y así evitarte problemas (incluso de portabilidad si se comporta de manera diferente en cada compilador).
Dudo tanto porque sí que hay lenguajes donde he leido explicitamente esto, pero en C no recuerdo habermelo planteado nunca.
Un saludo.
Ruben3d