elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Guía rápida para descarga de herramientas gratuitas de seguridad y desinfección


  Mostrar Mensajes
Páginas: [1]
1  Programación / Programación C/C++ / Re: [C++] Error stray 354 en: 24 Noviembre 2012, 20:58 pm
PTM! El error estupido!! >.<

Muchas gracias de nuevo por la respuesta :)

(Al menos sirve como antecedente para cualquiera que tenga el mismo error :P).


Salu2!!
2  Programación / Programación C/C++ / [C++] Error stray 354 en: 24 Noviembre 2012, 09:01 am
Hola de nuevo.

He aquí otra de mis dudas :P

Primero les mostraré la parte del código que me esta dando problemas (todo el resto funciona bien):

Código:
void mostrar(){

    //imagen inicial
    cout << "Imagen Inicial\n";
    for(int i=0; i<filas; i++){
        cout << endl;
        for(int j=0; j<columnas; j++){
            if(j<columnas-1)
                cout << pixeles[i][j].getRojo() << "-" << pixeles[i][j].getVerde() << "-" << pìxeles[i][j].getAzul() << " ";
            else
                cout << pixeles[i][j].getRojo() << "-" << pixeles[i][j].getVerde() << "-" << pìxeles[i][j].getAzul() << "\n";
        }
    }
    cout << endl;
    cout << endl;

    //imagen modificada
    cout << "Imagen Modificada" << endl;
    for(int i=0; i<filas; i++){
        cout << endl;
        for(int j=0; j<columnas; j++){
            if(j<columnas-1)
                cout << pixeles2[i][j].getRojo() << "-" << pixeles2[i][j].getVerde() << "-" << pìxeles2[i][j].getAzul() << " ";
            else
                cout << pixeles2[i][j].getRojo() << "-" << pixeles2[i][j].getVerde() << "-" << pìxeles2[i][j].getAzul() << "\n";
        }
    }
    cout << endl;
    cout << endl;

}
(Donde, linea 311: cout << pixeles[ i ][j].getRojo() << "-" << pixeles[ i ][j].getVerde() << "-" << pìxeles[j].getAzul() << " ";)


Y he aquí el error (click para verlo completo):



Cabe mencionar además que si por ejemplo acorto las "concatenaciones" de cout que dan problemas, de la siguiente forma, por ejemplo:

Código:
cout << pixeles[i][j].getRojo() << "-";

No me da error, compila todo bien, aunque si hago algo como esto:

Código:
cout << pixeles[i][j].getRojo();
cout << "-";
cout << pixeles[i][j].getVerde();
cout << "-";
cout << pìxeles[i][j].getAzul();
cout << " ";

Tampoco compila, dándome el mismo error.

Pareciera como sí la "concatenacion" se "saturara" y me diese algo así como un "tope" (si es que eso tiene algun sentido jaja). Aunque igual raro, pues creo que no debería (y nunca me habia pasado antes, con este ni con ningun otro lenguaje). WTF! O.o

Bueno, ese es mi problema. Ojalá puedan ayudarme tal como lo han hecho hasta ahora :)

Saludos y muchas gracias.
3  Programación / Programación C/C++ / Re: [C++] Matrices en: 21 Noviembre 2012, 01:14 am
Muy agradecido nuevamente :)

Salu2!!
4  Programación / Programación C/C++ / Re: [C++] Matrices en: 19 Noviembre 2012, 20:39 pm
Excelente!! Hiciste exactamente lo que pedía :)
MUY agradecido.

Sólo me quedó una duda: Ya que la matriz se creó con new, ¿No es necesario poner en algun lado el comando delete para liberar memoria (en mi caso, al final del do-while del main que creé y antes del return, por ejemplo), y de ser así, cómo quedaría en el codigo para liberar esta matriz en particular?
5  Programación / Programación C/C++ / [C++] Matrices en: 19 Noviembre 2012, 06:11 am
Hola a todos..... tengo una duda existencial que aun no puedo resolver... necesito crear una matriz cuadrada de dimension n ingresada por el usuario por consola y luego el programa imprime la matriz con determinada forma creada por mi.

El codigo es el siguiente:

Código:
#include <iostream>
using namespace std;

void printMatriz(int m[][], int n){

    for(int i=0; i<n; i++){
        for(int j=0; j<n; j++){
            cout << m[i][j];
            if(j==n-1) cout << endl;
        }
    }
    cout << endl;

}

void forma(int m[][], int n){

    for(int i=0; i<n; i++){
        for(int j=0; j<n; j++){
            if(i==0) m[i][j] = 1;
            if(j==0||j==n-1) m[i][j] = 1;
            if(i==n-1) m[i][j] = 1;
        }
    }
    printMatriz(m,n);

}

int main(){

    int n = -1;
    int f;
    do{
        do{
            cout << "Ingrese dimension de matriz cuadrada mayor a 4: ";
            cin >> n;
            if(n==0) break;
        }while(n<5);
        int m[n][n];
        forma(m,n);        
    }while(n!=0);
    return 0;

}

Sé que esta mal la recepción de la matriz en las funciones, pero estoy perdido en como hacerlo funcionar.

Dado el código anterior, ¿Cuáles serían las modificaciones que ustedes le harían para realizar lo que quiero?
No es necesario que lo expliquen, sólo escriban el código funcional, con el menor numero de cambios posibles, así yo me encargo de investigar bien cómo es que funciona (si explican, mejor (más rapido). Si no, bien igual, que yo me craneo :P).

Saludos y gracias.
6  Programación / Programación C/C++ / Re: Duda puntero en C en: 25 Septiembre 2012, 01:55 am
Me di cuenta de lo que estaba realmente sucediendo cuando dejé de ver el código y me fui a cenar :P
Lo que pasa es que estaba interpretando una simple "lectura" de q en vez de una asignación a ésta (Duh!). Y al ver los ejemplos que dieron, lo corroboraron.

Muchísimas gracias :)
7  Programación / Programación C/C++ / Duda puntero en C en: 24 Septiembre 2012, 04:24 am
Hola a todos. Soy nuevo aquí y soy principiante en C, por lo que tengo la siguiente duda con este código:

Código:
#include <stdio.h>

int main(){
    
     int *a = (int*)malloc(sizeof(int)*3);
     int *b;
     *a = 2;
     *(a+1) = 4;
     *(a+2) = 6;
     b = a;
     *(b+1)=0;
     while(*(b++));
     printf("%i, %i, %i\n",*a,*(a+1),*(a+2));
     printf("%i, %i, %i\n",*b,*(b+1),*(b+2));
     free(a);
     getchar();
     return 0;
    
}

Por qué en la salida obtengo:

Código:
2, 0, 6
6, 1314869318, -1856398723

¿Por qué con ese while pareciera que "desaparecieran" los valores de los punteros iniciales de b?

*Nótese que es ";" al final del while y no un "{", y no hay ninguna línea de código dentro del while.


Saludos y gracias :)
Páginas: [1]
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines