Cita de: CalgaryCorpus en 28 Julio 2014, 06:24 AM
por lo que
puntero[ -1 ]
es igual a
*( puntero - 1 )
Viéndolo de esa forma todo tiene mas sentido, solo una ultima consulta luego de esta asignación la cadena s queda modificada no?
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úCita de: CalgaryCorpus en 28 Julio 2014, 06:24 AM
por lo que
puntero[ -1 ]
es igual a
*( puntero - 1 )
char *mystrtok(char *s, const char *delim)
{
int c, sc = *delim;
char *token = s;
do{
c = *s++;
if (c == sc)
{
s[-1] = '\0';
return (token);
}
}while (*s);
return NULL;
}
Cita de: nolasco281 en 22 Julio 2014, 19:21 PM
Hola Utiliza el dev-c++
Y creo que estas en lo correcto debo de probar con otros compiladores?
Cita de: nolasco281 en 22 Julio 2014, 18:43 PM
Gracias por responder kutcher ese fue todo el codigo que nos proporcionaron disculpa mi ignorancia no entiendo declaración de la estructura REGPACK.
Ya que tengo otros ejemplos parecidos a este pero este es el unico que no me funciono.
Cita de: nolasco281 en 22 Julio 2014, 17:52 PMchar *buffer = (char *)alloc(512);
Cita de: nolasco281 en 22 Julio 2014, 17:52 PM
luego de hacer lo anterior me muestra el siquiente error
No se a que se deba talvez alquien me pueda orientar un poco.
Cita de: 718208 en 22 Julio 2014, 03:11 AM
como que son siempre iguales? son datos ingresados por un actor/usuario
Cita de: Juan821 en 9 Julio 2014, 03:56 AM
Como hago para luego de que pase un tiempo el programa haga lo que le ordene por ejemplo que deje digitar un numero por 60 segundos por ejemplo despues de esos 60 segundos no deje digitar nada y salgo un mensaje que me diga ha excedido su tiempo
#include <iostream>
#include <cstddef>
#include <ctime>
#include <conio.h>
bool get_input ( char *buffer, std::size_t size, int timeout )
{
std::time_t start = std::time ( 0 );
std::size_t n = 0;
for (;;)
{
if ( n == 0 && std::difftime (std::time(0), start ) >= timeout )
return false;
if (kbhit()) {
if ( n == size - 1 )
break;
char ch = (int)getche();
if ( ch == '\r' )
{
buffer[n++] = '\n';
break;
}
else
buffer[n++] = ch;
}
}
buffer[n] = '\0';
return true;
}
int main(void)
{
char buffer[20] = {};
if ( !get_input (buffer, 20, 5) ) {
std::cout << "Tiempo agotado\n";
buffer[0] = '\n';
}
std::cout<<"\nSalida: " << buffer;
return 0;
}
Cita de: Eternal Idol en 1 Julio 2014, 09:31 AM
De esta manera tenes una funcion capaz de cambiar el case (de minuscula a mayuscula y viceversa).