Edito: La última solución me parece la mejor y más correcta. Gracias!
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ú
#include <sys/socket.h>
#include <arpa/inet.h>
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <time.h>
int sockfd, newsock;
int main (int argc, char *argv [])
{
printf ("Code 0.1 - Dealer 2011\n");
if (argc != 2) { printf ("Use: %s <port>\n\n", argv [0]); return 1; }
int cont = 0;
struct sockaddr_in client, host;
char buffer [1024];
int size=sizeof (client);
sockfd=socket (2, 1 , 0);
host.sin_family=AF_INET;
host.sin_port=htons (atoi (argv [1]));
host.sin_addr.s_addr=0;
bind (sockfd, (struct sockaddr*)&host, sizeof (struct sockaddr));
listen (sockfd, 1);
while (1)
{
newsock=accept (sockfd, (struct sockaddr*)&client, &size);
printf ("Got connection from %s:%d\n", inet_ntoa (client.sin_addr), ntohs (client.sin_port));
do
{
time_t now=time (0);
struct tm *ahora;
ahora=localtime ((const time_t*)&now);
strftime (buffer, 1024, "%d/%m/%Y %H:%M:%S \n" , ahora);
buffer [strlen (buffer)] = 0;
cont=send (newsock, &buffer, strlen (buffer), 0);
sleep (1);
} while (cont == strlen (buffer));
printf ("Finishing connection from %s:%d\n\n", inet_ntoa (client.sin_addr), ntohs (client.sin_port));
close (newsock);
}
close (sockfd);
return 0;
}
#include <fcntl.h>
int main ()
{
int origen=open ("./origen", O_RDONLY), destino=open ("./destino", O_RDWR|O_CREAT|O_TRUNC, 0777); char buffer [15];
read (origen, buffer, 15); write (destino, &buffer, sizeof (buffer));
close (origen); close (destino); return 0;
}
#include <stdio.h>
int main ()
{
printf ("1\n");
printf ("2\n");
lseek (stdin, 0, 0);
printf ("3\n");
return 0;
}
$ gcc -o code code.c
$./code
3
2
$
#include <stdio.h>
#include <string.h>
#define direcc "dicc.txt"
#define intentos 7
int main ()
{
printf ("Ah0rcad0 0.2 : Sagrini 2011 : 28/12/2011\n");
printf ("Intenta adivinar la palabra secreta. Animo, tienes 7 intentos!\n");
FILE *fp = fopen (direcc, "r+"); char word [6]; char pista [50];
if (fp == NULL) { printf ("[!] El archivo %s no existe!\n\n", direcc); return 1; }
while (!feof (fp))
{
printf ("\n---\n");
fgets (word, 6, fp); fgetc (fp);
fgets (pista, 50, fp);
printf ("PISTA: %s\n", pista);
int len = strlen (word); char palabra [len], final [len]; char car; int cont; int aciertos = 0, tick;
strncpy (palabra, word, len); memset (final, '-', len); final [len] = '\0'; palabra [len] = '\0';
while (strcmp (final, palabra) != 0)
{
final [0] = palabra [0];
printf ("Escribe una letra: "); car=getchar ();
for (cont=0; cont<len; cont++) if (car == palabra [cont]) { final [cont] = car; tick = 1; }
if (tick != 1) aciertos++;
else tick = 0; while (getchar () != '\n');
printf ("%s (%d fallos)\n", final, aciertos);
if (aciertos >= intentos) break;
}
if (aciertos >= intentos) printf ("\nMala suerte, otra vez sera!\n");
else printf ("\nFelicidades! ;) %d fallo/s!\n", aciertos);
}
fclose (fp); return 0;
}
while (getchar () != 0) car=getchar ();
#include <stdio.h>
#include <string.h>
int main ()
{
char palabra [7], final [7], car; int cont; memset (final, '-', 6); final [6] = '\0';
printf ("Escribe una palabra (lenght -7 chars): "); fgets (palabra, 7, stdin); palabra [6] = '\0';
while (strcmp (palabra, final) != 0)
{
printf ("\nEscribe una letra: "); car=getchar (); // car = fgetc (stdin);
for (cont=0; cont<6; cont++) { if (car == palabra [cont]) final [cont] = car; }
printf ("%s\n", final); car = 0;
}
printf ("Well done! ;)\n\n"); getchar (); return 0;
}
$ ./code
Escribe una palabra (lenght -7 chars): willix
Escribe una letra: ------
Escribe una letra: w
w-----
Escribe una letra: w-----
Escribe una letra: i
wi--i-
Escribe una letra: wi--i-
Escribe una letra: l
willi-
Escribe una letra: willi-
Escribe una letra: x
willix
Well done! ;)
$