widening vs narrowing c site:stackoverflow.com - Search