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

 

 


Tema destacado: AIO elhacker.NET 2021 Compilación herramientas análisis y desinfección malware


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación C/C++ (Moderadores: Eternal Idol, Littlehorse, K-YreX)
| | |-+  necesito informacion
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] 2 Ir Abajo Respuesta Imprimir
Autor Tema: necesito informacion  (Leído 4,814 veces)
puchi

Desconectado Desconectado

Mensajes: 21



Ver Perfil
necesito informacion
« en: 12 Diciembre 2016, 23:24 pm »

Buenas tardes,

Como veréis me gusta bastante el lenguaje C, pero no consigo encontrar información y libros para programación C avanzado en español.

A lo máximo que he llegado con C es manejar ficheros y memorias,  y me gustaría a profundizar mucho más en C pero no se como.

Gracias, espero poder recibir ayuda.


En línea

engel lex
Moderador Global
***
Desconectado Desconectado

Mensajes: 15.514



Ver Perfil
Re: necesito informacion
« Respuesta #1 en: 12 Diciembre 2016, 23:30 pm »

primero que nada, te recomiendo migrar a C++ a menos que estés pensando hacer aplicaciones especificas, de todas formas si aprendes bien C++ y necesitas hacer algo en C, solo tienes que declarar las estructuras "a mano"

segundo... si, se que es un foro de habla hispana... pero sin aprender a leer inglés, estás limitado en el mundo de la informática... normalmente los papers importantes y muchos ensayos (de todo el mundo, incluyendo paises hispanohablantes) están en inglés por cosas de comodidad

ve si este te sirve

http://www.freelibros.org/programacion/el-lenguaje-de-programacion-c-plus-plus.html


En línea

El problema con la sociedad actualmente radica en que todos creen que tienen el derecho de tener una opinión, y que esa opinión sea validada por todos, cuando lo correcto es que todos tengan derecho a una opinión, siempre y cuando esa opinión pueda ser ignorada, cuestionada, e incluso ser sujeta a burla, particularmente cuando no tiene sentido alguno.
puchi

Desconectado Desconectado

Mensajes: 21



Ver Perfil
Re: necesito informacion
« Respuesta #2 en: 12 Diciembre 2016, 23:36 pm »

Básicamente lo que quiero aprender por ahora es utilizar C en lugar de los scripts de linux, por eso no sabia por donde empezar.
Ya que en muchos sitios me dicen emplea la función system();
Pero lo que realmente necesito es manejar el hardware del pc mediante C sin necesidad de embeber script dentro de C, no se si me explico.

Por otro lado y perdón por ser ignorante en el tema de C++, tengo entendido que se utiliza para programación orientada a objetos, pero realmente no entiendo la diferencia entre C y C++.
 
En línea

engel lex
Moderador Global
***
Desconectado Desconectado

Mensajes: 15.514



Ver Perfil
Re: necesito informacion
« Respuesta #3 en: 12 Diciembre 2016, 23:44 pm »

pero realmente no entiendo la diferencia entre C y C++.


ya lo dijiste... C++ soporta "objetos" que son estructuras complejas que facilitan muchisimo la vida, los objetos te "alejan" un poco de la ram y el manejo a mano de memoria, pero por la forma como se compilan, pueden dejar un codigo más eficiente... por otro lado trae muchas librerías que facilitan muchas tareas como manejo de strings


Citar
Pero lo que realmente necesito es manejar el hardware del pc mediante C

depende de que hardware, significa que lo que estás escribiendo es un driver y no es nada facil...

si estás usando system(), es porque estás usando tu programa para llamar a consola, para llamar a otro programa...

dame un ejemplo donde requieras system() para ver que estás haciendo
En línea

El problema con la sociedad actualmente radica en que todos creen que tienen el derecho de tener una opinión, y que esa opinión sea validada por todos, cuando lo correcto es que todos tengan derecho a una opinión, siempre y cuando esa opinión pueda ser ignorada, cuestionada, e incluso ser sujeta a burla, particularmente cuando no tiene sentido alguno.
MAFUS


Desconectado Desconectado

Mensajes: 1.603



Ver Perfil
Re: necesito informacion
« Respuesta #4 en: 12 Diciembre 2016, 23:47 pm »

Si vas a meterte a programar para Linux te recomiendo el libro The Linux Programming Interface.

C es solo una herramienta y hay que aprender otras técnicas para usarla bien. Este libro es bastante bueno: http://www.lcc.uma.es/~av/Libro/

Por otra parte C puede hacer muchas cosas que de primeras no cabría esperar. En inglés. Metaprogramación: http://www.chiark.greenend.org.uk/~sgtatham/mp/
En línea

puchi

Desconectado Desconectado

Mensajes: 21



Ver Perfil
Re: necesito informacion
« Respuesta #5 en: 12 Diciembre 2016, 23:52 pm »

el ejemplo seria en el caso de querer encender o apagar el wifi del ordenador que si estubieramos en la consola de linux escribimos:

Código:
sudo ifconfig wlan0 up
si esto lo guardamos en un fichero.sh

Y entonces desde C podríamos ejecutar el siguiente código utilizando system("fichero.sh");

Entonces se plantea mi duda, es posible activar la tarjeta wireless sin utilizar código script, solo utilizando C.
En línea

engel lex
Moderador Global
***
Desconectado Desconectado

Mensajes: 15.514



Ver Perfil
Re: necesito informacion
« Respuesta #6 en: 12 Diciembre 2016, 23:57 pm »

te advierto... normalmente eso es mejor hacerlo por system para que el sistema operativo lo controle apropiadamente, sin embargo, casi todo loq ue está el linux es codigo libre, basta con buscar "source code of" y el programa (en este caso ifconfig)

aquí está ifconfig.c, así es por dentro
https://github.com/giftnuss/net-tools/blob/master/ifconfig.c

si vas al nivel anterior verás la carpeta con las herramientas que usa el OS para manejar la red, junto con su makefile para compilar
« Última modificación: 12 Diciembre 2016, 23:59 pm por engel lex » En línea

El problema con la sociedad actualmente radica en que todos creen que tienen el derecho de tener una opinión, y que esa opinión sea validada por todos, cuando lo correcto es que todos tengan derecho a una opinión, siempre y cuando esa opinión pueda ser ignorada, cuestionada, e incluso ser sujeta a burla, particularmente cuando no tiene sentido alguno.
puchi

Desconectado Desconectado

Mensajes: 21



Ver Perfil
Re: necesito informacion
« Respuesta #7 en: 13 Diciembre 2016, 00:03 am »

Después de ver el código parece ser bastante complicado.
Tendré que aprender antes leyendo libros para poder adentrarme a tocar cosillas pequeñas del código de ifconfig.

Encontré este libro http://www.casadellibro.com/libro-unix-programacion-avanzada-3-ed/9788478976034/966894, pero no se si me servira para Linux ya que menciona UNIX.

Por curiosidad , desde system(); es posible recibir variables?
por si ejecuto un script y quiero que este me devuelva un valor como se recogería este desde C.
« Última modificación: 13 Diciembre 2016, 00:06 am por puchi » En línea

Borito30


Desconectado Desconectado

Mensajes: 481


Ver Perfil
Re: necesito informacion
« Respuesta #8 en: 13 Diciembre 2016, 00:07 am »

te advierto... normalmente eso es mejor hacerlo por system para que el sistema operativo lo controle apropiadamente, sin embargo, casi todo loq ue está el linux es codigo libre, basta con buscar "source code of" y el programa (en este caso ifconfig)

aquí está ifconfig.c, así es por dentro
https://github.com/giftnuss/net-tools/blob/master/ifconfig.c

si vas al nivel anterior verás la carpeta con las herramientas que usa el OS para manejar la red, junto con su makefile para compilar

En este caso ifconfig esta compilado solamente en c puro? sin usar c++?
En línea

Estoy en contra del foro libre y la Sección de juegos y consolas (distraen al personal)
engel lex
Moderador Global
***
Desconectado Desconectado

Mensajes: 15.514



Ver Perfil
Re: necesito informacion
« Respuesta #9 en: 13 Diciembre 2016, 00:09 am »

si, linux a nivel e nucleo y en casi todas sus herramientas comunes está en C por razones de eficiencia y manejo optimo de la memoria... allí es que entra el poder de C
En línea

El problema con la sociedad actualmente radica en que todos creen que tienen el derecho de tener una opinión, y que esa opinión sea validada por todos, cuando lo correcto es que todos tengan derecho a una opinión, siempre y cuando esa opinión pueda ser ignorada, cuestionada, e incluso ser sujeta a burla, particularmente cuando no tiene sentido alguno.
Páginas: [1] 2 Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
necesito informacion
Programación Visual Basic
desastre23 2 1,413 Último mensaje 28 Octubre 2005, 16:39 pm
por Kizar
Necesito informaciòn ?
Hacking Wireless
elnene68 0 1,766 Último mensaje 10 Septiembre 2013, 23:49 pm
por elnene68
c++ necesito informacion
Programación C/C++
1ntr1g4 3 1,749 Último mensaje 25 Febrero 2016, 09:08 am
por MAFUS
Necesito mas informacion!!
Ingeniería Inversa
d0x1s 1 2,043 Último mensaje 26 Mayo 2019, 19:47 pm
por MCKSys Argentina
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines