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 - Eternal Idol

#231
ASM / Re: Juego Space Invader en asm
4 Abril 2021, 10:50 AM
Si tuvieras los archivos .INC deberias ser capaz de ensamblarlo desde linea de comandos con el ml.exe ... esto es codigo de 16 bits para MS-DOS.
#232
Programación C/C++ / Re: duda codigo simple C
23 Marzo 2021, 22:28 PM
Cita de: K-YreX en 23 Marzo 2021, 21:52 PM
Al final si sacamos un patrón de todo esto es que se copian tantos caracteres como tenga la cadena más corta de las dos y el siguiente caracter tiene que ser el de fin de cadena '\0'.
Para los casos 2 y 3 vistos antes bastaría con hacer la modificación que ha comentado @Eternal Idol porque la cadena más corta es cadena2; sin embargo, en el caso 1 nos generará problemas de acceso a memoria.

Partiendo de:
Cita de: 73P3 en 23 Marzo 2021, 19:54 PM
Hola, estoy tratando de hacer una funcion que copia los caracteres de una string en otra. el funcionamiento es igual que el de la funcion strcpy() pero no puedo usarla.

No, el resultado del caso 1 esta mal, se deben copiar strlen de la cadena fuente + 1 (0 terminador). La funcion strcpy es insegura por naturaleza, si el buffer de destino no tiene suficiente espacio para copiar la fuente con su 0 terminador es un problema del llamador. Hay alternativas que reciben un tamaño maximo a usar como parametro ...

Citar1) Copies the null-terminated byte string pointed to by src, including the null terminator, to the character array whose first element is pointed to by dest.
The behavior is undefined if the dest array is not large enough. The behavior is undefined if the strings overlap. The behavior is undefined if either dest is not a pointer to a character array or src is not a pointer to a null-terminated byte string.

https://en.cppreference.com/w/c/string/byte/strcpy

Seguramente las cadenas de destino en cuestion son simples arrays de caracteres donde anteriormente hubo informacion.

char b[128];
strcpy(b, "Hola");
strcpy(b, "Adios");
//b no es Adio, es Adios


PD. Tu codigo, al menos, no funciona bien con un buffer no inicializado (strlen sobre destino es un error logico) ni con uno vacio (solo copia el primer caracter de la cadena fuente y no el 0 terminador).
#233
Programación C/C++ / Re: duda codigo simple C
23 Marzo 2021, 20:10 PM
Linea 6, pones el 0 terminador de cadena2 de acuerdo al tamaño de la propia cadena2, no cambia nada eso. Podrias borrar esa linea y ejecutar el bucle por una iteracion mas ...
#234
Linea 103.
#235
NO se hacen tareas.
#236
Wikimedia Foundation, la empresa detrás de Wikipedia, está creando un nuevo servicio de pago. Bajo el nombre de Wikipedia Enterprise, ofrecerá nuevas opciones a las empresas que utilizan su contenido. No cambia nada en el servicio gratuito actual, pero gigantes como Google o Facebook al pagar obtendrán la información más rápidamente actualizada y otras funciones. Es el próximo gran proyecto desde que intentaron crear su propia red social.

Más en: https://www.xataka.com/servicios/wikipedia-tendra-version-pago-se-centrara-ofrecer-mejor-servicio-a-empresas
#237
Fujitsu Laboratories ha anunciado el desarrollo de un modelo de IA, con Fugaku, el superordenador más rápido del mundo, que permitirá a los equipos de gestión de desastres predecir las inundaciones por tsunami en las zonas costeras, casi en tiempo real.

El anuncio lo hace junto con El Instituto Internacional de Investigación de la Ciencia de los Desastres de la Universidad de Tohoku y el Instituto de Investigación de Terremotos de la Universidad de Tokio. En caso de que se produzca un terremoto real, la introducción de datos de ondas de tsunami observadas en alta mar de este modelo de IA permitirá predecir  las inundaciones.

Más en: https://revistabyte.es/actualidad-it/fugaku-tsunamis/
#238
Programación C/C++ / Re: Archivos (c)
17 Marzo 2021, 08:53 AM
AlbertoBSD esta en lo correcto; agrego un par de detalles, si queres que abrArch cambie el valor de, en este caso, la variable archivo tenes que usar doble puntero (o referencia en C++) y la comparacion que estas haciendo en cerrArch no funcionara por la misma razon (aunque le asignes el resultado del fopen a f en la funcion abrArch eso sera unicamente una variable de ambito local y archivo continuara teniendo el valor que tenia antes de llamar a abrArch).

int main ()
{
    FILE* archivo = 0;
    abrArch(archivo);
...
   /*archivo seguira siendo 0 en este punto*/
void abrArch(FILE* f)
{
    f = fopen("f.txt", "w");
#239
La idea es buena, ya veremos el resultado practico.
#240
NO se hacen tareas.