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

 

 


Tema destacado: Usando Git para manipular el directorio de trabajo, el índice y commits (segunda parte)


  Mostrar Mensajes
Páginas: 1 2 3 4 5 6 7 8 9 10 [11] 12 13 14 15 16 17 18
101  Programación / Programación C/C++ / C++ argumentos en el main. en: 7 Mayo 2014, 05:23 am
Muy buenas, estos días he estado practicando con c++, y me surgió un problema, mi intención es leer un string, y tranformar carácter por carácter a ASCII, si este es par, sumarle 1 y devolver el caracter, y si es impar, restarle uno y más de lo mismo.

Código
  1. #include <iostream>
  2.  
  3. using namespace std;
  4.  
  5. char transformar_caracter(char letra){
  6.  
  7.    int n = int(letra);
  8.  
  9.    if (n%2 == 0){
  10.        n++;
  11.    }else{
  12.        n--;
  13.    }
  14.    return char(n);
  15. }
  16.  
  17. int main(){
  18.    if(argc < 2){
  19.            return false;
  20.    }
  21.  
  22.    string frase;
  23.    getline(cin, frase);
  24.  
  25.    int tam = frase.size();
  26.  
  27.  
  28.    for(int i=0; i<tam; i++){
  29.    cout << transformar_caracter(frase[i]);
  30.    }
  31. }

Hasta aquí funciona a la perfección, pero mi intención es ejecutarlo desde la consola. Para eso cambie el código añadiendo los argumentos típicos del main.

Código
  1. #include <iostream>
  2.  
  3. using namespace std;
  4.  
  5. char transformar_caracter(char letra){
  6.  
  7.    int n = int(letra);
  8.  
  9.    if (n%2 == 0){
  10.        n++;
  11.    }else{
  12.        n--;
  13.    }
  14.    return char(n);
  15. }
  16.  
  17. int main(int argc, char *argv[]){
  18.    if(argc < 2){
  19.            return false;
  20.    }
  21.  
  22.    string frase = argv[1];
  23.    // getline(cin, frase);
  24.  
  25.    int tam = frase.size();
  26.  
  27.  
  28.    for(int i=0; i<tam; i++){
  29.    cout << transformar_caracter(frase[i]);
  30.    }
  31. }

El problema se encuentra en la linea 23, básicamente, antes usaba Getline para así leer toda la linea, y que el string no se parase al leer el espacio, ahora el problema está en que al ejecutarlo por consola,  únicamente lee hasta el espacio y no encuentro forma de usar el getline como argumento.

No sé si me explico...

Gracias de antemano!.
102  Programación / Programación C/C++ / Problemas con arrays C++ en: 26 Marzo 2014, 03:46 am
Hola buenas.

Ando probando los arrays en C++, y vengo muy acostumbrado de PHP. Tengo el siguiente problema, según C++ para hacer arrays se utiliza la siguiente sintaxis.



Código
  1. Type name[long] = {... , ... , ...};

En el caso del ejemplo de la tabla anterior.
Código
  1. String foo[4]{ "Aitor", "Lluvia", "Luna", "Azul" };

A dónde quiero llegar es si lo siguiente retornaría falso.

Código
  1. if ( foo[5] == false){ cout << "Retorna false"; }

Pero da errores de compilación. Suponiendo que no retornase un valor False... ¿Cómo cerrarías el siguiente bucle?

Código
  1. int main()
  2. {
  3.    string foo[4] = {"Aitor", "Lluvia", "Luna", "Azul"};
  4.    int x = 0;
  5.  
  6.        while(...){
  7.        cout  << foo[x] << endl;
  8.        x++;
  9.  
  10.    }
  11. }

Podría usarse

Código
  1. while(x < 4){

Pero es muy forzado y no es "automatizado" dado que doy por hecho que sé cuanto es la longitud del array.

Un saludo y gracias.
103  Programación / Programación C/C++ / Re: Problemas con c++. en: 26 Marzo 2014, 03:22 am
Más o menos me hago una idea, gracias de nuevo a los dos.

Saludos!
104  Programación / Programación C/C++ / Re: Problemas con c++. en: 24 Marzo 2014, 12:16 pm
Buenas, muchas gracias a los dos por resolver mis dudas en gran medida.

Se agradece la limpieza del código tanto  el del hilo como el de la firma. También me llamó mucho la atención el -1 que usaba en el [f-1] acabar poniéndolo después de contar la longitud de caracteres. Pareciese una obviedad pero no lo había visto tan claro como hasta ahora.

¿A qué os referís cuando decís cast?

También aprovecho y os pregunto una cosita más, actualmente hago 'intento' de aprender c++ de Pau Fernández (No sé si lo conoceréis, pero me gustó su forma de explicar en los vídeos, y su página). Ahora bien, ¿recomendáis algún otro que no sea 0utkast? Sinceramente con Jesús conde (0utkast) acabo muriendo de aburrimiento.

¿Hay algún reference como en php lo es www.php.net? Me refiero a algo oficial o por el estilo.

Sin más, de nuevo agradezco la ayuda aquí dada.

Un saludo!
105  Programación / Programación C/C++ / Problemas con c++. en: 24 Marzo 2014, 08:09 am
Hola buenas estoy empezando con C++ y se me puse hacer el tonto, quería escribir un string en la consola, y que en la salida de ésta lo mostrase al revés.

Estuve mirando y lo que más fácil me pareció fue contar los caracteres que tenía el string, meterlo en un ciclo y que los recorriese uno a uno desde el final hasta el principio. De modo que generé este código.

Código
  1. #include <iostream>
  2. #include <string.h>
  3. #include <stdio.h>
  4.  
  5. using namespace std;
  6.  
  7. int main() {
  8.  
  9.    string cadena;
  10.    cin >> cadena;
  11.  
  12.    int f = strlen(Cadena);
  13.  
  14.  
  15. while ( f >= 0){
  16. cout << char(Cadena[f-1]);
  17. f--;
  18.  
  19. }
  20.  
  21. }
  22.  

Pero no se podía compilar, generaba un error que decía Cadena was not declared in the scape. En la linea 12 es decir...

Código
  1.    int f = strlen(Cadena);

Después estuve leyendo sobre Strlen en la página de c++
http://www.cplusplus.com/reference/cstring/strlen/

Por lo que acabé generando este código.

Código
  1. #include <iostream>
  2. #include <string.h>
  3. #include <stdio.h>
  4.  
  5. using namespace std;
  6.  
  7. int main() {
  8.  
  9.    char Cadena[256];
  10.    gets(Cadena);
  11.  
  12. int f = strlen(Cadena);
  13.  
  14.  
  15. while ( f >= 0){
  16. cout << char(Cadena[f-1]);
  17. f--;
  18.  
  19. }
  20.  
  21. }

En este, si compilaba y funcionaba perfecto, pero no entendía muy bien el código, en especial

Código
  1. char Cadena[256];

¿A qué se refiere ese 256 en ASCII (Supongo)? ¿Por qué sin el genera un error en el gets?

Y por último.. ¿Qué es gets?

Código
  1. gets(Cadena);

Parece que actuase como un Cin ¿Cuál es la diferencia?.

Gracias por la ayuda.

Saludos!
106  Sistemas Operativos / Windows / Re: Utilizar particionado como USB en: 22 Marzo 2014, 18:18 pm
Si creas una partición para guardar tus cosas, esa partición permanecerá intacta con todo lo que contenga al formatear la partición del sistema operativo...

Eso de usar la partición como USB no lo entiendo...

Suerte.

Bueno, realmente como USB me referia a unidad de almacenamiento, me expliqué mal y quise poner como ejemplo el usb pero realmente fue estúpido, error por mi parte, perdona la confusión.

Entiendo que si formateo la particion donde está windows  no perderé la otra particion que cree para almacenar los datos, pero windows tiene una opcion de restaurar el sistema con valores de fábrica, que basicamente vendria a ser lo mismo, ahí si se cargaría la partición o tampoco?
107  Sistemas Operativos / Windows / Utilizar particionado como USB en: 22 Marzo 2014, 07:18 am
Hola buenas, quería formartear el sistema operativo que actualmente tengo, pero tengo muchisima información que basicamente ocupa 40-50Gb

Y no me veo pasandome el finde sentado grabando todos los datos en discos, dado que no voy a comprar un USB de dicha capacidad.

Entonces se me había ocurrido que crease un particionado, Disco 'x' y en este lo usase cómo USB, para después de formatear Windows pudiese tener aún los datos.

Ahora bien, si creo una unidad, directamente puedo usarla como pendrive?

Y si digo a Windows que formatee el pc como de Fábrica, estará la unidad con los datos o juntará el particionado?

Un saludo y gracias.
108  Sistemas Operativos / Windows / Error 0xc000007b en: 22 Marzo 2014, 07:12 am
Hola buenas, he estado leyendo sobre este problema, pero a parte de todas las posibles soluciones que he encontrado, ninguna me ha servido.

El error se produce al abrir algunos juegos, este error lo tengo actualemnte con 3 Juegos, DMC4, DMC, y Naruto Shippuden Ninja storm 3 Full burst pc, al intentar ejecutarlos sale el siguiente mensaje.

Código:
La aplicación no se pudo iniciar correctamente (0xc000007b). Haga click en Aceptar para cerrerla.

También decir que tenia windows 8 Builder, con el juego de Naruto instaldo, junto a ac3, y mirror edge, funcionaban correctamente, pero un día salió una alerta de que Windows 8 debía ser actualizado, o de lo cotrario cada dos horas se apagaría, asi pues tuve que actualizarlo, perdiendo los juegos dado que estaban instalados en unidades. Al instalar de nuevo el juego de naruto me encontré con dicho error, por lo que asumo que debe de ser algún problema de Windows.

Con los otros juegos no he probado asique desconozco si realmente Ac3 y Mirrod edge darian el mismo problema.

Otros juegos como Leage of legend, si funcionan...

Realmente no me interesa formatear el pc, como antes he dicho, he buscado soluciones a este problema pero ninguna me ha servido.

El sistema operativo ahora mismo trata de un Windows 8.1 Pro.

Un saludo y gracias.


Edit: Ya había creado un tema en Software, creo que no fue el lugar adecuado, llevaba semanas sin ser respondido y la única respuesta fue "Que tenia un virus".

Saludos!
109  Informática / Software / Re: Error 0xc000007b en: 12 Marzo 2014, 18:17 pm
Cierto, un virus, lo que yo decía  ;D

aja.
110  Informática / Software / Re: Error 0xc000007b en: 11 Marzo 2014, 00:31 am

¿Era el Sasser el que utilizaba el mismo modus operandis?

Sip, hombre, lo de que "windows tenía que cerrarse"...



A mí me suena a virus, ¿qué antivirus usas?

Avast, acerca de lo de la actualizacion era debido a que usaba windows 8.1 probuilder  y habia que actualizarlo a windows 8.1 pro (me informé desde la pagina de microsoft) dudo que eso fuese un virus ._.
Páginas: 1 2 3 4 5 6 7 8 9 10 [11] 12 13 14 15 16 17 18
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines