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 - eferion

#681
Cita de: Meta en 15 Marzo 2014, 03:09 AM
En Visual C++ Express 2013 se puede programar C++ con CLR como si fuera C# con el santo framwork que en este caso no me interesa. Y C/C++ Win32. Pensaba que para 64 bits no servía, hasta que me comentaron que hay un WDK 8.1 para serlo.

.Net es un framework basado en una máquina virtual. Esto quiere decir que puedes programar .Net en cualquier lenguaje siempre y cuando exista un compilador que genere código compatible con dicha máquina virtual.

En el caso que comentas. VS dispone de un compilador CLR para C++. Este compilador genera código compatible con la máquina de .Net. Sin embargo, VS dispone también de un compilador C++ nativo, que genera binario puro y permite ejecutar los programas sin depender de la máquina virtual. En este segundo caso no puedes acceder a las facilidades de .Net. Es así de sencillo o complicado, depende de cómo quieras verlo.

Cita de: Meta en 15 Marzo 2014, 22:56 PM
Win32 ahora, y en el futo...

¿Win64 (por llamarlo de alguna manera) no es remomendable?

El problema con Win64 es que aún hay muchísimo hardware que no está preparado para soportarlo o directamente no dispone de drivers compatibles.

Como bien dices es algo que tenderá a solucionarse, pero tienes que darle tiempo.

Ahora mismo programar algo en 32 bits te garantiza una compatibilidad muchísimo mayor que si programas en 64 bits... aunque eso no quiere decir que no se pueda hacer.
#682
WinForms es exclusivo de .NET. Por tanto, si quieres usar WinForms tienes que usar .NET por fuerza.

Sin embargo, para C++ hay otras alternativas totalmente viables: wxWidgets, Qt, WinAPI, MFC, GTK, ... Cada una tiene sus puntos fuertes y sus puntos débiles con respecto a las demás.

A mi personalmente Qt me gusta bastante, es un framework bastante completo.
#683
Deberías conseguir y leer con tranquilidad un manual de C. Te dará muchas más satisfacciones que darte de cabezazos con estas cosas. Es un consejo.

los includes sirven para enlazar con código externo.

#include <time.h>

se sustituye por el contenido del archivo "time.h". De esta forma el compilador es capaz de encontrar las funciones definidas dentro de este archivo ( en este caso la función time().

Para saber qué hace la línea

srand((unsigned)time(NULL));

Deberías descomponerla en instrucciones simples:


// Esta linea te devuelve la fecha y la hora actuales.
// Realmente almacena el numero de segundos desde el 01/01/1970 a las 00:00
time_t tiempo = time(NULL);

// Esta linea convierte el valor anterior en un tipo basico de C, un entero sin signo.
unsigned int valor = (unsigned)tiempo;

// Esta linea inicializa el generador de numeros aleatorios.
// Pasarle el tiempo es una forma de que la semilla inicial sea mas o menos aleatoria.
srand(valor);


En cualquier caso, en serio, consigue un buen manual de C y empieza a leerlo sin prisa. Adquirir una buena base es más importante que aprender a tirar líneas de código.
#684
si haces

printf("%s", letra[0] );

estás imprimiendo una cadena... una cadena es una secuencia de caracteres que acaba en el caracter '\0'. Dado que en tu caso, letra tiene una secuencia de caracteres que no termina en '\0', el programa seguirá imprimiendo el contenido de la memoria adyacente a letra y eso hace que el programa se muera.

Si lo que quieres es imprimir un caracter tienes que cambiar el printf por

printf( "%c", letra[0] );
#685
Programación C/C++ / Re: Problema extraño
13 Marzo 2014, 13:50 PM
jajajajaja

Con razón recomendaban utilizar un comparador de ficheros XDDD
#686
Programación C/C++ / Re: [DUDA] Matrices
13 Marzo 2014, 12:48 PM
Cita de: Gh057 en 13 Marzo 2014, 12:42 PM
hola kayron8 solo a título informativo, cuando tienes una serie de constantes a los cuales le asignas números enteros en especial positivos correlativos, puedes utilizar la enumeración:

Código (cpp) [Seleccionar]

enum DiasSemanas
{
Lunes = 1,
Marte,
Miercoles,
Jueves,
Viernes,
Sabado,
        Domingo
};



mas info -> http://es.wikibooks.org/wiki/Programaci%C3%B3n_en_C/Estructuras_y_Uniones#Enumeraciones

pd: fui a la primera fuente lenguaje C de K&R, pero salía mucho mas enredado jajaa creo que aquí es más claro, y te ajusté la primera variable para que inicie en 1, como querías. saludos.

Lo que el quiere son strings... no enumerados XD
#687
Programación C/C++ / Re: Problema extraño
13 Marzo 2014, 12:48 PM
Vale sí, era eso.

Lo que pasa es que eso me hace dudar de si el juez no te da por buena la práctica precisamente porque su última línea no termina con un salto.
#688
Programación C/C++ / Re: Problema extraño
13 Marzo 2014, 12:42 PM
Por cierto... si pruebo el código que has puesto... se come la última línea...
#689
Programación C/C++ / Re: Problema extraño
13 Marzo 2014, 12:28 PM
No se si es que no han implementado bien las reglas pero...

La respuesta que tu pones es
NoO eS verdad aNgeL DeE aMor QuEe eN eStaA aParTadaA oRilLaA Mas PuraA LaA

Y la que saca tu programa es

NoO eS verdad aNgeL DeE aMor QuEe eN eStaA aParTadaA oRilLaA Mas PuraA LaA

ahí veo algunas diferencias en "verdad". Pero lo dicho, no se si será que no está bien redactado el enunciado o que está mal el resultado que te proponen.
#690
Programación C/C++ / Re: [DUDA] Matrices
13 Marzo 2014, 12:18 PM
Puedes dejar vacío el primer espacio de la matriz


char dias_semana[][10] {
 "", // Vacio
 "Lunes",
...


Pero vete acostumbrando a lo de los índices empezando en 0 porque te vas a hartar a verlos. Es más cómodo adaptarse.