Foro de elhacker.net

Programación => Programación C/C++ => Mensaje iniciado por: anonimo12121 en 1 Marzo 2011, 12:49 pm



Título: [c++]Code mensaje en consola vertical [Arreglado]
Publicado por: anonimo12121 en 1 Marzo 2011, 12:49 pm
Jaja mientras practicaba puntero me aburria XDD.
Código:
#include <iostream>
using namespace std;
int frase(int numchar,char *frase){
    int x = strlen(frase)/numchar;
    char *p;
    p=frase;
    for(int i=0;i<numchar;i++){
        for(int j=0;j<x+1;j++){
            //
            if(numchar*j+i<strlen(p))cout << p[numchar*j+i] << " ";
            
        }
        cout << "\n";
        //para que no muestre texto basura "cuando el numero es = de largo que la frase cierra la funcion
    }
}
int main(int argc,char *argv[]){
    frase(20,"hola que tal soy Xafirot y esta es una muestra de texto vertical usando un pequeño algoritmo y usando tambien puntero y este texto es para alargar el texto");
    cin.get();
    return 0;
}


Título: Re: [c++]Code mensaje en consola vertical
Publicado por: RyogiShiki en 1 Marzo 2011, 15:44 pm
Algunas cosas:

Compilación normal con parametro -Wall:
Código:
textv.cpp: In function ‘int frase(int, char*)’:
textv.cpp:4: error: ‘strlen’ was not declared in this scope
textv.cpp: In function ‘int main(int, char**)’:
textv.cpp:16: warning: deprecated conversion from string constant to ‘char*’

Ahora incluyendo cstring:
Código:
textv.cpp: In function ‘int frase(int, char*)’:
textv.cpp:11: warning: comparison between signed and unsigned integer expressions
textv.cpp: In function ‘int main(int, char**)’:
textv.cpp:18: warning: deprecated conversion from string constant to ‘char*’
textv.cpp: In function ‘int frase(int, char*)’:
textv.cpp:16: warning: control reaches end of non-void function

Salida de la ejecución del programa...Al parecer en mi ejecución se están perdiendo algunos caracteres:
(http://i51.tinypic.com/21e697r.png)

Saludos


Título: Re: [c++]Code mensaje en consola vertical
Publicado por: anonimo12121 en 1 Marzo 2011, 16:33 pm
Ups que raro espera que se ve que modifique algo.
por lo de caracteres estraños puede ser la Ñ o cosas similares que me da = xDD solo era por hacer algo entretenido XDD.


Ya esta e editado el codigo es:
Código:
#include <iostream>
using namespace std;
int frase(int numchar,char *frase){
    int x = strlen(frase)/numchar;
    char *p;
    p=frase;
    for(int i=0;i<numchar;i++){
        for(int j=0;j<x+1;j++){
            //
            if(numchar*j+i<strlen(p))cout << p[numchar*j+i] << " ";
           
        }
        cout << "\n";
        //para que no muestre texto basura "cuando el numero es = de largo que la frase cierra la funcion
    }
}
int main(int argc,char *argv[]){
    frase(20,"hola que tal soy Xafirot y esta es una muestra de texto vertical usando un pequeño algoritmo y usando tambien puntero y este texto es para alargar el texto");
    cin.get();
    return 0;
}