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 2 3 4 5 6 7 [8] 9 10 11 12 13 14 15
71  Programación / Programación C/C++ / Re: (Ayuda) Skin para Eclipse CDT estilo Visual Studio 2013 (Oscuro) en: 5 Junio 2015, 01:22 am
Vaya... con el rato que me pasé buscando y resulta que estaba ahí...

Muchas gracias! Era eso exactamente lo que quería!
72  Seguridad Informática / Seguridad / Re: Que comienzos son los recomendados para un principiante en: 2 Junio 2015, 12:16 pm
Sé programar en Windows, pero no se si habrá diferencia con Linux (quitando la API de Windows xD)
73  Seguridad Informática / Seguridad / Que comienzos son los recomendados para un principiante en: 31 Mayo 2015, 01:26 am
Hola. Muy buenas a tod@s. Hoy me ha entrado la curiosidad de este mundo de la seguridad informática. Bien, me presento: soy un programador principalmente en lenguaje C++ y Java (principalmente usados en videojuegos). Sé mas o menos como funciona la arquitectura de un ordenador (manejo de memoria, código máquina...). No sé prácticamente nada sobre redes (solo sé lo que es muy básico). La mayor parte de mi experiencia está basada en Windows, es decir, no sé prácticamente nada sobre Linux y servidores

Sabiendo todo esto, por dónde me recomendarían empezar a aprender Seguridad Informática (por hobby :)). Gracias
74  Programación / Programación C/C++ / Re: |Lo que no hay que hacer en C/C++. Nivel basico| en: 30 Mayo 2015, 16:47 pm
Otra es no usar namespaces (sobre todo cuando solo vas a usar cout xD). Pongo un ejemplo:

Código 'malo':

Código
  1. #include <iostream>
  2.  
  3. using namespace std;
  4.  
  5. int main() {
  6. cout << "HOLA" << endl;
  7.  
  8. cin.get();
  9. return 0;
  10. }

Código 'bueno':

Código
  1. #include <iostream>
  2.  
  3. int main() {
  4. std::cout << "HOLA" << std::endl;
  5.  
  6. std::cin.get();
  7. return 0;
  8. }
75  Programación / Programación C/C++ / (Ayuda) Skin para Eclipse CDT estilo Visual Studio 2013 (Oscuro) en: 29 Mayo 2015, 01:45 am
Hola a tod@s. La duda está básicamente expresada en el título. Estoy buscando un tema para el IDE Eclipse CDT (C++) que se parezcca al de Visual Studio 2013 (tema oscuro).

Aquí os dejo de como se ve el tema de Visual Studio:



Nota: es preferible que el tema sea compatible con Color Theme (los que usen Eclipse CDT supongo que sabrán que es), para los que no, es como una amplicación dentro de Eclipse que te permite poner un tema sin complicaciones.

Muchas gracias.
76  Programación / Programación C/C++ / Re: ayudaa..no se ejecuta(urgente) en: 28 Mayo 2015, 01:11 am
¿Por qué incluyes la librería conio.h si has definido gotoxy con la API de Windows?
77  Programación / Programación C/C++ / Re: (Ayuda) Programa crashea al analizar una cadena (char *) en: 27 Mayo 2015, 01:49 am
Ahí va el código completo:

String.h

Código
  1. #ifndef _String_h_
  2. #define _String_h_
  3.  
  4. #include <cstdlib>
  5.  
  6. #ifndef NULL
  7. #define NULL 0
  8. #endif
  9.  
  10. class String {
  11. public:
  12. String();
  13. String(const char *init_value);
  14.  
  15. unsigned int getNumCharacters();
  16. bool isEmpty();
  17.  
  18. const char *toString();
  19.  
  20. void append(const char *data);
  21. char charAt(unsigned int index);
  22.  
  23. void toUpperCase();
  24. void toLowerCase();
  25.  
  26. void replaceData(const char *data);
  27. void replaceChar(char oldChar, char newChar);
  28. void clear();
  29.  
  30. private:
  31. char *_value;
  32. unsigned int _num_characters;
  33. };
  34.  
  35. #endif

String.cpp

Código
  1. #include "string.h"
  2.  
  3. String::String() {
  4. _value = (char *)calloc(1, 1);
  5. _num_characters = 1;
  6. }
  7.  
  8. String::String(const char *init_value) {
  9. unsigned int num_characters = 0;
  10.  
  11. while(init_value[num_characters] != (char)NULL)
  12. num_characters += 1;
  13.  
  14. _num_characters = num_characters;
  15. _value = (char *)malloc(num_characters + 1);
  16. _value[num_characters] = (char)0;
  17.  
  18. for(unsigned int i = 0; i < num_characters; i++)
  19.        _value[i] = init_value[i];
  20. }
  21.  
  22. unsigned int String::getNumCharacters() {
  23. return _num_characters;
  24. }
  25.  
  26. bool String::isEmpty() {
  27. return _num_characters == 1;
  28. }
  29.  
  30. const char *String::toString() {
  31. char *result = (char *)malloc(_num_characters + 1);
  32.  
  33.    result[_num_characters + 1] = (char)NULL;
  34.  
  35. for(unsigned int i = 0; i <= _num_characters; i++)
  36. result[i] = _value[i];
  37.  
  38. return result;
  39. }
  40.  
  41. void String::append(const char *data) {
  42. unsigned int num_data_characters = 0;
  43. unsigned int new_num_characters;
  44.  
  45. while(data[num_data_characters] != (char)NULL)
  46. num_data_characters += 1;
  47.  
  48. realloc(_value, _num_characters + num_data_characters + 1);
  49.  
  50. _value[_num_characters + num_data_characters] = (char)NULL;
  51. new_num_characters = _num_characters + num_data_characters;
  52.  
  53. for(unsigned int i = 0; i < num_data_characters; i++)
  54.        _value[i] = data[i];
  55.  
  56. _num_characters = new_num_characters;
  57. }
  58.  
  59. char String::charAt(unsigned int index) {
  60. return _value[index];
  61. }
  62.  
  63. void String::toUpperCase() {
  64. for(unsigned int i = 0; i <= _num_characters; i++) {
  65. if(_value[i] >= (char)97 && _value[i] <= (char)122)
  66. _value[i] -= (char)32;
  67. }
  68. }
  69.  
  70. void String::toLowerCase() {
  71. for(unsigned int i = 0; i <= _num_characters; i++) {
  72. if(_value[i] >= (char)65 && _value[i] <= (char)90)
  73. _value[i] += (char)32;
  74. }
  75. }
  76.  
  77. void String::replaceData(const char *data) {
  78.    unsigned int num_characters = 0;
  79.  
  80. while(data[num_characters] != (char)NULL)
  81. num_characters += 1;
  82.  
  83.    _num_characters = num_characters;
  84. realloc(_value, num_characters + 1);
  85. _value[num_characters] = (char)0;
  86.  
  87. for(unsigned int i = 0; i < num_characters; i++)
  88.        _value[i] = data[i];
  89. }
  90.  
  91. void String::replaceChar(char oldChar, char newChar) {
  92. for(unsigned int i = 0; i <= _num_characters; i++) {
  93. if(_value[i] == oldChar)
  94. _value[i] = newChar;
  95. }
  96. }
  97.  
  98. void String::clear() {
  99. realloc(_value, 1);
  100. _value[0] = (char)NULL;
  101. _num_characters = 1;
  102. }

main.cpp

Código
  1. #include <iostream>
  2.  
  3. #include "string.h"
  4.  
  5. int main(int argc, char *argv[]) {
  6. String cadena = "";
  7.  
  8. cadena.replaceData("Hola, soy un programador :'D");
  9.  
  10. std::cout << cadena.toString();
  11.  
  12. std::cin.get();
  13. return 0;
  14. }

Solo digo que con MinGW funciona perfectamente y con el compilador de VisualStudio 2013 (no se como se llama), me da errores (no de compilación, sino de ejecución)
78  Programación / Programación C/C++ / Re: (Ayuda) Programa crashea al analizar una cadena (char *) en: 27 Mayo 2015, 00:36 am
Está claro, el código completo es muy largo, e innecesario (ya que no accedo a partes de ese código no puesto)
79  Programación / Programación C/C++ / Re: (Ayuda) Programa crashea al analizar una cadena (char *) en: 26 Mayo 2015, 23:41 pm
Sé que el error se produce en el while ya que quitandolo, y sustituyendo la variable _num_characters por 17 no me da ese error.

Esa función pertecene a una clase creada por mí llamada String (la estoy haciendo a modo de ejercicio), y _value es la cadena de caracteres que define a un objeto String.

PD:
Código
  1. for(unsigned int i = 0; i < num_characters; i++)
  2.        _value[i] = data[i];

Esa es mejor, ¿no?
80  Programación / Programación C/C++ / Re: (Ayuda) Programa crashea al analizar una cadena (char *) en: 26 Mayo 2015, 23:31 pm
Pues resulta que era el compilador...

He usado el compilador MinGW (el que viene por defecto con Code::Blocks) y funciona... Es extraño, todos los compiladores deberían seguir las reglas ANSI, por lo que no debería de haber diferencia...
Páginas: 1 2 3 4 5 6 7 [8] 9 10 11 12 13 14 15
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines