El tema del count(*) es que en un paginado (donde mas se aplica) no sirve, ya que te dará el número de registros en la pagina y no el total de registros en la tabla. Y el SQL_CALC_FOUND_ROWS no, cuenta todo sacando el limit, por lo que resulta una alternativa a solo el mysql_num_rows, o bien a un count independiente de esa consulta.
Eso yo no lo aclare en el ejemplo y es una cualidad muy interesante, nuevamente, con el limit sería así:
Código PHP:
$sql = "SELECT SQL_CALC_FOUND_ROWS
codigo, nombre
FROM usuarios limit 10";
$r = mysql_query($sql ); #Resourse al query, solo 10 registros de, supongamos 333 en total
#Para el total haces:
$rTotal = mysql_query("select found_rows()");
$rsTotal = mysql_fetch_row($rTotal);
$total = $rsTotal[0]; #Aca tendremos 333 aún teniendo el limit aplicado a la consulta.
mysql_free_result($rTotal);