La funcion atoi si forma parte del estandar Ansi C, asi que yo diria que si es estandar.
Por otra parte, esto que haces aca es medio "peligroso":
que pasa si no ejecuta lo que tienes el el if correspondiente al 4to parametro y esa variable por mala suerte tiene un valor distinto de 0? la va a asignar de igual manera, mi recomendacion (la repito) es que uses argc para saber cuantos parametros recibio tu programa.
Saludos