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

 

 


Tema destacado: Curso de javascript por TickTack


  Mostrar Mensajes
Páginas: 1 ... 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 [150] 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 ... 401
1491  Programación / Programación General / Re: [problema]programa esteganografia en: 30 Enero 2016, 21:15 pm
Puedes escribir en primer lugar el número de caracteres del texto.
1492  Programación / Programación C/C++ / Re: Como extraer datos de un txt y guardar en funcion de un valor en un binario?? en: 28 Enero 2016, 21:55 pm
Aclarado está. Como dijo Carlos, un array guarda los datos consecutivos en su memoria, en vez de guardar un puntero.

Como detalle, si inicializas un array con una constante como ahí has escrito, el compilador automáticamente copia los datos. Lo ves fácilmente si compilas el programa a ensamblador (opción -S con GCC).
La salida para:
Código
  1. int main(){
  2. char array_var[] = "ABCDEFGHIJKLMNOPQRSTUVWXYZ";
  3. }
En mi caso, fue esta (el trozo que afecta al array):
Código
  1. movl $1145258561, 1(%esp)
  2. movl $1212630597, 5(%esp)
  3. movl $1280002633, 9(%esp)
  4. movl $1347374669, 13(%esp)
  5. movl $1414746705, 17(%esp)
  6. movl $1482118741, 21(%esp)
  7. movw $23129, 29(%esp)
  8. movb $0, 31(%esp)

Ya para finalizar, ver que, la primera asignación: "1145258561". En Hexadecimal es 44434241. Separando, se ve lo evidente: 44 43 42 41, son los caracteres DCBA.
Los penúltimos, "23129", "5A59". Y por último, el caracter nulo.

Sin embargo, si declaramos array_var como const char*, obtendremos una salida así:

Código
  1. LC0: .ascii "ABCDEFGHIJKLMNOPQRSTUVWXYZ\0"
  2. movl $LC0, 12(%esp)

Como vemos, solo copia su dirección.
1493  Programación / Programación C/C++ / Re: Como entrelazar varios .cpp y error de código en: 28 Enero 2016, 20:22 pm
Bien. En C++, la compilación tiene 2 fases.
En la primera, el código fuente se compila a código objeto (.o generalmente). Cada CPP, se compila a un archivo (generalmente, hay excepciones).
Luego, hay que unir todos esos archivos, donde el linker los entrelaza y genera el exe (en Windows).

Si trabajas con un IDE, estos pasos los hará probablemente solo, así que solo te debes preocupar de tener lso archvios en el proyecto.

Un detalle: para que el main (u otro archivo) pueda acceder a las funciones, clases y variables de otros archivos, estos archivos con funcionalidades han de tener una cabecera (.h o .hpp). La cabecera no se compila.
Un ejemplo:

main.cpp
Código
  1. #include "archivo.h"
  2.  
  3. int main(){
  4.    funcion();
  5. }

archivo.h
Código
  1. #ifndef ARCHIVO_H
  2. #define ARCHIVO_H
  3.  
  4. void funcion();
  5.  
  6. #endif ARCHIVO_H

archivo.cpp
Código
  1. #include "archivo.h"
  2.  
  3. #include <iostream>
  4.  
  5. void funcion(){
  6.    std::cout << "Hola" << std::endl;
  7. }

Como detalle adicional, ves las directivas de preprocesado IFDEF,DEFINE,ENDIF del .h. Estas están para que, si tienes varios archivos enlazados entre sí mediante include, no haya problemas, logrando que solo se declare 1 vez lo que el .h contenga.


En caso de que compiles con GCC, te puedo poner un ejemplo de compilación:
Código:
g++ -c main.cpp -o main.o
g++ -c archivo.cpp -o archivo.o
g++ main.o archivo.o -o main.exe
1494  Programación / Programación C/C++ / Re: Como extraer datos de un txt y guardar en funcion de un valor en un binario?? en: 28 Enero 2016, 13:38 pm
Código
  1. while (!archivo.eof()) {
Nunca lees de archivo. Así que nunca saldrá del whiile. Tendrás que descomentar las líneas donde lees, colocar otras, o colocar otra condición.
1495  Programación / Java / Re: El numero sobre pasa el rango menor solicitado en: 28 Enero 2016, 10:44 am
Generas un número incorrectamente.
Código
  1. int num_escondido = min + gen.nextInt(max-min+1);
1496  Programación / Programación C/C++ / Re: Como entrelazar varios .cpp y error de código en: 28 Enero 2016, 10:32 am
¿Y dónde está la función "error()"?
1497  Programación / Programación C/C++ / Re: Como extraer datos de un txt y guardar en funcion de un valor en un binario?? en: 28 Enero 2016, 10:30 am
Las constantes numéricas no se ponen entre comillas:
Código
  1. persona.renta <= '6000'
->
Código
  1. persona.renta <= 6000

Dices que no hace su función. Pero decir eso es no decir nada. Qué es lo que hace y qué es lo que no hace. Si preguntas de nuevo, es obvio que no hace su función.
1498  Programación / Programación C/C++ / Re: ¿Como crear programa C++? en: 26 Enero 2016, 23:04 pm
Esto va en el sub-foro de Programación, C/C++.
Para hacer un hack con C++, lo más evidente, es que necesitas aprender C++, hasta el punto de manejo de memoria de otros procesos, y ya luego, según lo que necesites.
Pero lo primero, es lo primero.
1499  Programación / Scripting / Re: Node o python?? en: 26 Enero 2016, 10:12 am
Si es tu primer lenguaje, te diría Python. Sino, decir que son lenguajes diferentes. NodeJS está bien orientado a eventos.
Todo será la utilidad que le des.
1500  Programación / Programación C/C++ / Re: Memoria dinámica - Parecido a Twitter en: 25 Enero 2016, 16:59 pm
Un ejemplo

Código
  1. int messageCount = 50;
  2. Message *messages = new Message[mssageCount];
  3.  
  4. for(int i=0; i<messageCount; i++)
  5.    ...
  6.  
  7. delete[] messages;
Páginas: 1 ... 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 [150] 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 ... 401
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines