Por ejemplo, yo le doy la ruta de donde está, y quiero que lo elimine. ¿Cómo lo hago?
#include <stdio.h>
int main ()
{
if( remove( "/usr/myfile.txt" ) == -1 )
perror( "Error deleting file" );
else
puts( "File successfully deleted" );
return 0;
}
Saludos ;D
Hola! la funcion remove retorna cero en caso de exito, de lo contrario un valor distinto de cero. Entonces la condicion del if seria distinto de 0
Saludos
Cita de: durasno en 10 Abril 2013, 00:49 AM
Hola! la funcion remove retorna cero en caso de exito, de lo contrario un valor distinto de cero. Entonces la condicion del if seria distinto de 0
Saludos
Sí, un numero diferente a 0, concretamente el -1. Es lo mismo
Cita de: Puntoinfinito en 10 Abril 2013, 15:05 PMCita de: durasno en 10 Abril 2013, 00:49 AMla funcion remove retorna cero en caso de exito, de lo contrario un valor distinto de cero. Entonces la condicion del if seria distinto de 0
Sí, un numero diferente a 0, concretamente el -1. Es lo mismo
No. No es lo mismo.
Hay que tener cuidado cuando el valor de retorno de una función no esta especificado porque eso puede causar problemas, por ejemplo si el programa se porta a otra plataforma.
Un ejemplo en la misma linea es la función "isdigit" (prototipo en <ctype.h>), su especificación indica que retornara un valor diferente de cero si el carácter es un dígito y cero en caso contrario. A mi me encantaría que retornara 1 o 0 pero en mi caso esta retorna 4 o 0.
Otro ejemplo es EOF, este usualmente es -1 pero, de nuevo, lo mejor es no confiarnos y solo asumir que es "algún valor negativo".
Un saludo
Cita de: rir3760 en 10 Abril 2013, 16:01 PM
Sí, un numero diferente a 0, concretamente el -1. Es lo mismo
No. No es lo mismo.
Hay que tener cuidado cuando el valor de retorno de una función no esta especificado porque eso puede causar problemas, por ejemplo si el programa se porta a otra plataforma.
Un ejemplo en la misma linea es la función "isdigit" (prototipo en <ctype.h>), su especificación indica que retornara un valor diferente de cero si el carácter es un dígito y cero en caso contrario. A mi me encantaría que retornara 1 o 0 pero en mi caso esta retorna 4 o 0.
Otro ejemplo es EOF, este usualmente es -1 pero, de nuevo, lo mejor es no confiarnos y solo asumir que es "algún valor negativo".
Un saludo
Bueno, yo solo lo he hecho porque se que este parámetro da -1, ya se que otros no, y cuando ya si eso, generalizo y pongo > 0
Cita de: Puntoinfinito en 10 Abril 2013, 16:16 PM
Bueno, yo solo lo he hecho porque se que este parámetro da -1, ya se que otros no, y cuando ya si eso, generalizo y pongo > 0
El operador que estás buscando es != (Distinto de) porque pudiera ser un valor negativo, recuerda que es distinto de cero.
Teniendo el operador ! no es más fácil:
if (!remove( "/usr/myfile.txt" ))
puts( "File successfully deleted" );
else
perror( "Error deleting file" );