Menú

Mostrar Mensajes

Esta sección te permite ver todos los mensajes escritos por este usuario. Ten en cuenta que sólo puedes ver los mensajes escritos en zonas a las que tienes acceso en este momento.

Mostrar Mensajes Menú

Mensajes - MAFUS

#101
Entiendo que trabajas a nivel kernel por lo que deberías usar lo que te explican aquí:
https://stackoverflow.com/questions/2888421/malloc-in-kernel
#102
windows.h sólo funciona para Windows. Android corre sobre Linux por tanto si trabajas sobre el S.O. base deberás usar la API Linux, normalmente con termio. Ahora sí lo qué pretendes es hacerlo sobre un terminal que corre sobre la capa Android a quien emula, y cómo se configura programáticamente.
#103
Lo haces para Windows?
#104
Pero entonces el usuario sabría qué número aleatorio saldría, violando una de las premisas del enunciado que dice:

Citar... sin saber el numero aleatorio que almaceno la variable dato ...
#105
Quieres decir que el generador de números aleatorios adivine el número que piensa una persona?
#106
Pásate por codingame.com : pondrás a prueba todo tipo de algoritmos y los podrás comparar con los que ha escrito el resto de la comunidad. También hay desafíos dónde deberás programar la lógica de autómatas que lucharan con otros también programados por humanos.

Pero si te gustan las matemáticas y estás más interesado en la resolución de este tipo de problemas puedes optar por projecteuler.net
#107
Cómo usas conio pues no lo puedo probar, y ahora mismo me da pereza cambiar código, pero ya que kiko es un puntero deberías usar el operador -> en vez de . para acceder a su miembro.
#108
Mira esto: https://books.google.es/books?id=CQmQarItGiUC&pg=PA286&lpg=PA286&dq=binary+1A+marks+end+of+file&source=bl&ots=V3piB9rJQi&sig=ACfU3U2cUyO6PBcEyynMbpX2xUZIIXi0Sg&hl=es&sa=X&ved=2ahUKEwjKv767rqXiAhWDxYUKHVy_BpkQ6AEwAXoECAkQAQ#v=onepage&q=binary%201A%20marks%20end%20of%20file&f=false

Esto quiere decir que estás trabajando los archivos en modo texto y cuando C encuentra el valor 1A (26 en decimal) lo considera fin de archivo. Cambia el acceso a los archivos para que sean accesos binarios incluyendo b al final: en vez de "a" debe ser "ab", en vez de "r" debe ser "rb".
#109
Para que entiendas: NULL es lo mismo que 0, por tanto char *puntero = NULL es lo mismo que char *puntero = 0, es decir, puntero apuntará a la dirección 0 de memoria. C determina que la posición 0 (NULL) siempre será una posición no válida y saltará el error. Se usa por parte del programador para evitar que un puntero apunte a cualquier sitio y crear problemas de seguridad. Mejor que el programa muera a que te quedes sin dinero en el banco porque no has inicializado un puntero.

Las cadenas en C empiezan en una posición x de la memoria y son secuenciales, es decir, sus datos se encuentran en x+0, x+1, x+2, ... hasta que el dato de x+n valga '\0' (eso es 0), notar que he dicho el dato, el valor de la posición de memoria y no la posición de memoria en sí. Por tanto una función que trabaje con cadenas empezará dónde se le indique el puntero que devuelve la cadena y va recorriendo la memoria de forma secuencial hasta encontrar el carácter de fin de cadena, haciendo lo que deba hacer en cada carácter encontrado.
#110
Una cadena no devuelve su contenido sino su dirección de memoria. Pues eso mismo hace la función: regresa la dirección de memoria de la primera letra de la cadena. Como es una dirección de memoria lo debe adquirir el puntero (por tanto no se va a pasar su contenido).

printf ya sabe que con %s el parámetro va a ser una cadena e internamente va a hacer lo necesario para mostrarla. Pero otra vez a una cadena se le accede por medio de su dirección de memoria del primer elemento, no por su contenido, así que no necesita el *.