¿Extraño archivo "null" creado después de ejecutar mi programa?

Iniciado por Vikttorly, 1 Abril 2014, 03:24 AM

0 Miembros y 1 Visitante están viendo este tema.

Vikttorly

Hola a todos, solo esta tarde termine un pequeño algoritmo que me mandaron en la universidad, después de ejecutarlo un  archivo llamado "null" se creo automáticamente después de cerrar el programa en el escritorio.



Alguien que me diga porque pasa eso.

Este es el código:

#include <iostream>
using namespace std;
class sueldo{
public:
float  im, h, he, hi, s, sn;
public:
void calcular(void)
{
if (hi>=2)
{
im=(s/100*7);
he=(h*500);
sn=hi+he-im+s+1000;
}
else
{
im=(s/100*7);
he=(h*500);
sn=hi+he-im+s;
}
}
void leer(void)
{
cout<<"Introduzca el sueldo mensual del trabajador en Bsf: ";
cin>>s;
cout<<"Introduzca el numero de hijos del trabajador (si tiene): ";
cin>>hi;
cout<<"Introduzca las horas extras trabajadas por el empleado: ";
cin>>h;
}
void imprimir(void)
{
cout<<"El sueldo total que el empleado recibira es de: "<<sn;
cout<<" Bsf ";
}
};
int main(void)
{
sueldo objeto;
objeto.leer();
objeto.calcular();
objeto.imprimir();
system("PAUSE >null");
}

engel lex

system("PAUSE >null");

le estás diciendo al cmd que cree un archivo llamado "null" y coloque lo que muestra ejecutar la función "pause"
El problema con la sociedad actualmente radica en que todos creen que tienen el derecho de tener una opinión, y que esa opinión sea validada por todos, cuando lo correcto es que todos tengan derecho a una opinión, siempre y cuando esa opinión pueda ser ignorada, cuestionada, e incluso ser sujeta a burla, particularmente cuando no tiene sentido alguno.

razormta

lo mismo que dice el de arriba xd sustituye el system("PAUSE > NULL"); por system("pause");

engel lex

no... yo nunca dije

Citarsustituye el system("PAUSE > NULL"); por system("pause");

sino que en cmd el ">" sirve para imprimir en un archivo, normalmente para volcado de datos del cmd

si escribes en cmd

ping google.com > archivo.txt el amd creará un "archivo.txt" y lo llenará con la salida del ping
El problema con la sociedad actualmente radica en que todos creen que tienen el derecho de tener una opinión, y que esa opinión sea validada por todos, cuando lo correcto es que todos tengan derecho a una opinión, siempre y cuando esa opinión pueda ser ignorada, cuestionada, e incluso ser sujeta a burla, particularmente cuando no tiene sentido alguno.

rir3760

El problema se debe a la llamada a system:
Código (cpp) [Seleccionar]
system("PAUSE >null");
La redireccion a nul se utiliza para que la salida del comando interno pause (el texto "Presione una ...") no aparezca en pantalla. En pocas palabras es un error ortografico.

Un saludo
C retains the basic philosophy that programmers know what they are doing; it only requires that they state their intentions explicitly.
--
Kernighan & Ritchie, The C programming language

BlackM4ster

Como ya te han dicho arriba, cambia

Código (cpp) [Seleccionar]
system("pause>null");
por
Código (cpp) [Seleccionar]
system("pause>nul");
- Pásate por mi web -
https://codeisc.com

Eternal Idol

BlackM4ster en las reglas de este subforo dice EXPRESAMENTE lo siguiente:
• Si van a responder a un hilo por favor lean atentamente su contenido y comprueben que su aporte no haya sido hecho con anterioridad por otro usuario.

Por favor, en el futuro tenelo en cuenta asi no tengo que borrarte mensajes.


Y razormta tres cuartos de lo mismo.
La economía nunca ha sido libre: o la controla el Estado en beneficio del Pueblo o lo hacen los grandes consorcios en perjuicio de éste.
Juan Domingo Perón

BlackM4ster

Cita de: Eternal Idol en  1 Abril 2014, 13:50 PM
BlackM4ster en las reglas de este subforo dice EXPRESAMENTE lo siguiente:
• Si van a responder a un hilo por favor lean atentamente su contenido y comprueben que su aporte no haya sido hecho con anterioridad por otro usuario.

Por favor, en el futuro tenelo en cuenta asi no tengo que borrarte mensajes.


Y razormta tres cuartos de lo mismo.

Perdón...
- Pásate por mi web -
https://codeisc.com

Vikttorly

Gracias a todos por responder, ya entendí y corregí el detalle.