Menú

Mostrar Mensajes

Esta sección te permite ver todos los mensajes escritos por este usuario. Ten en cuenta que sólo puedes ver los mensajes escritos en zonas a las que tienes acceso en este momento.

Mostrar Mensajes Menú

Mensajes - MAFUS

#1101
Has visto arrays?
#1103
CitarWG14/N1256 Committee Draft — Septermber 7, 2007 ISO/IEC 9899:TC3
5.1.2.2.3 Program termination
1 If the return type of the main function is a type compatible with int, a return from the initial call to the main function is equivalent to calling the exit function with the value
returned by the main function as its argument;10) reaching the } that terminates the main function returns a value of 0. If the return type is not compatible with int, the termination status returned to the host environment is unspecified.
Forward references: definition of terms (7.1.1), the exit function (7.20.4.3).

Del borrador del estandar N1256.

#1104
A partir de C99 el return de main es opcional, se devolverá 0 por defecto.
#1105
Si tienes que guardarlo todo (no puedes procesar iterativamente sobre cada argumento) puedes crear una estructura así:
struct argumento {
    int tipo;
    void *valor;
};


Donde tipo es un entero que indicará de qué tipo fundamental es el argumento, podrías generar una lista con un enum para más comodidad.
En valor, mediante malloc, reservas tanta memoria como sea necesaria, según tipo y tamaño (en caso de cadena).

Al procesar tu cadena cuentas cuántos % hay en tu cadena y no sean %%, funcionamiento típico de printf, y mediante malloc generas un array dinámico de tantas estructuras argumento.
Creado el array iteras sobre los argumentos y vas rellenando el array.

A la hora de leerlo solo debes ir fijándote sobre que tipo es el elemento del array y hacer el cast correspondiente a su tipo a la hora de recuperar el valor.
#1106
El fuente que has presentado tiene errores muy raros. Por ejemplo else(1000);

Haciendo uso de la librería estándar puedes pasar desde un número a una cadena de texto, así es fácil ordenar los números como quieras sin necesidad de descomponerlo y hacer extrañas comparaciones. Después conviertes la cadena en número otra vez y operas.

Como veo que es tarea no te pondré el código y te dejo con la idea :D
#1107
Esto parece más a cosa de centralita. ¿no se mandará desde el cliente un prefijo que hará que la centralita de tu cliente conmute al modem, o al fax, o como sea, y cuándo termine esa comunicación,  que cuelguen, vuelva a conectar los teléfonos?
#1108
Línea 31:
Te has equivocado de puntero. En vez de ingles, debe ser buscar.
#1109
En el primer código cambia:
while( !feof(pArchivo) ){
    fscanf(pArchivo,"%d\t%[^\n]\t%lf",&orden,nombre,&salario);
    printf(" %d\t%-10s\t%lf",orden,nombre,salario);
}


por
fscanf(pArchivo,"%d\t%30[^\t]\t%lf",&orden,nombre,&salario);
while( !feof(pArchivo) ){
    printf(" %d\t%-10s\t%0.2lf\n",orden,nombre,salario);
    fscanf(pArchivo,"%d\t%30[^\t]\t%lf",&orden,nombre,&salario);
}


La cadena de control de fscanf ha cambiado nombre ahora recibirá un máximo de 30 caracteres, además se detendrá la lectura de nombre cuándo encuentre una tabulación (que es tu separador), no el carácter de nueva línea (que no puede existir en esa posición. También se cambia el orden de las lecturas en el buche, así no imprimirás por duplicado la última lectura.
#1110
Programación C/C++ / Re: Programa
6 Septiembre 2016, 19:49 PM
for necesita tres sentencias separadas por un punto y coma. Éstas son opcionales, los punto y coma no.

Para el for:
int num;
for(num = 1; num <= 100; ++num) {
    // ... codigo
}


for se encarga de todo lo referente a inicializar, controlar el bucle según su valor y de actualizarlo.
Por otra parte para saber si un entero es múltiplo de otro usa el operador módulo, que devuelve el resto de la división entre los dos números dados. El siguiente ejemplo dice: si el resto de la división entre A y B es 0, A es múltiplo de B:
A % B == 0

Por otra parte usa la estructura if / else, así si la primera presunción resulta ser cierta ya no se evalúan las demás.
Por ejemplo:
if(a % 4 == 0) {
    // a es múltiplo de 4
}
else if(a % 2 == 0) {
    // a es múltiplo de 2
}
else {
    // a no es múltiplo ni de 4 ni de 2
}


Cómo puedes ver se puede usar para organizar el orden en que se evalúan los valores.

**** No se hacen tareas, la resolución de ella es tu responsabilidad. Te podemos orientar y resolver dudas, eso sí.