|
Mostrar Temas
|
Páginas: [1]
|
1
|
Programación / Programación C/C++ / ¿La función memcpy coloca el final de cadena "\0"?
|
en: 29 Junio 2018, 15:13 pm
|
Hola a todos, buen día.- Tengo esa duda y por mas que busco ninguna página que consulto me da la respuesta, estoy haciendo una agenda y quiero poner en cada registro la fecha de alta del contacto.- #include <stdio.h> #include <time.h> #include <string.h> int main(int argc,char* argv[]) { char output[128], fecha[11]; strftime(output ,128,"%d/%m/%Y %H:%M:%S",tlocal ); return 0; }
Es todo, espero Uds. lo sepan. Dano
|
|
|
2
|
Programación / Programación C/C++ / Tabla con punteros.
|
en: 9 Junio 2018, 19:41 pm
|
Hola, buen día. Encontré esto en unos apuntes y no se como llamarlo, se me antoja una tabla de 3 x 20 con puntero pero me gustaría que alguien me diga si es lo correcto, o cual es la definición correspondiente. int arr[COL], i, j; int (*pm)[REN] = (int(*)[REN]) &arr;
Lo que sigue lo implemente yo y parece que funciona correctamente.- #include <stdio.h> #include <stdlib.h> #define REN 3 #define COL 20 int main(int argc, char *argv[]){ int arr[COL], i, j; int (*pm)[REN] = (int(*)[REN]) &arr; for ( i=0; i<REN; i++ ){ for ( j=0; j<COL; j++ ){ *(*(pm+COL)+REN) = 2; } } for ( i=0; i<REN; i++ ){ for ( j=0; j<COL; j++ ){ printf ( "%d ", *(*(pm +COL )+REN ) ); } } return 0; }
Saludos y buen Sábado.
|
|
|
3
|
Programación / Programación C/C++ / Vector con puntero, obtener la posición de un determinado elemento.
|
en: 8 Junio 2018, 01:27 am
|
Hola, ¿como están? Dude mucho antes de hacer este post, pero me plantie ¿si uno no pide ayuda como aprende?,- Bueno eso es todo, dejo todo el programa ya que es corto y tal vez a alguien le sirva de consulta.- Lo que necesito es para aplicar en el printf de la línea 61, - #include <stdio.h> #include <stdlib.h> #include <time.h> #define ELEMENT 20 void rellenar( int *ptrVec ); void ordenar ( int *ptrVec ); void buscar ( int *ptrVec ); int main(int argc, char *argv[]){ int vector[ELEMENT], i; rellenar ( vector ); ordenar ( vector ); buscar ( vector ); return 0; } void rellenar( int *ptrVec ){ int numero, i; for ( i=0; i<ELEMENT; i++){ *( ptrVec + i) = numero; } } void ordenar ( int *ptrVec ){ int i, j, tmp, menor, pos; for ( i=0; i<ELEMENT-1; i++ ){ menor = *(ptrVec+i); tmp = menor; pos = i; for ( j=i; j<ELEMENT-1; j++ ){ if ( menor > *(ptrVec +j+1) ){ menor = *(ptrVec +j+1); pos = j+1; } } if ( tmp != menor ){ *(ptrVec+i) = menor; *(ptrVec+pos) = tmp; } } } void buscar ( int *ptrVec ){ int centro,inf=0,sup=ELEMENT-1,buscar=15; for (int i=0; i<ELEMENT; i++){ printf ( "%d ", *(ptrVec +i ) ); } while( inf<=sup ){ centro=((sup-inf)/2)+inf; if(*(ptrVec+centro) == buscar){ printf ( "\n Encontrado en la posicion...: %d", 2 ); break; } else if(buscar < *(ptrVec+centro)){ sup=centro-1; } else{ inf=centro+1; } } }
Saludos. Dano
|
|
|
4
|
Programación / Programación C/C++ / Duda con punteros a char en función [lenguaje C]
|
en: 2 Junio 2018, 01:17 am
|
Hola ¿como están? En el tutorial con el que estoy re-pasando punteros hay un programa que pongo a continuación: #include <stdio.h> #include <stdlib.h> #include <string.h> char copiar(char*, const char*); int main(void){ char ptrA[80] = "Cadena a usar para el programa de ejemplo"; char ptrB[80]; copiar ( ptrB, ptrA ); return EXIT_SUCCESS; } char copiar ( char *destino, const char *fuente ){ while ( *fuente != '\0' ){ *destino++ = *fuente++; } *destino = '\0'; return *destino; }
La duda es que la función (en el tutorial) tiene esta línea que yo quite y funciona igual, me podrían decir porque la habrán incluido, ¿tiene alguna ventaja? ,- char *p = destino;
char copiar ( char *destino, const char *fuente ){ char *p = destino; while ( *fuente != '\0' ){ *p++ = *fuente++; } *p = '\0'; return *destino; }
Dano.
|
|
|
5
|
Programación / Programación C/C++ / Imprimir una cadena con puntero sin utilizar un bucle.
|
en: 31 Mayo 2018, 20:53 pm
|
Hola ¿como están? . Tengo una dificultad en este programita que por mas que repaso manuales y busco en la web no logro dar con la tecla, mi pregunta es porque no puedo imprimir la frase invertida con un simple printf %s, #include <stdio.h> #include <string.h> int main(void){ char cadena[]="Rosa y Yiyi", tmp[12]=""; char *p = cadena; char *t = tmp; int i, j, lar; for (i=lar,j=0; i>=0; i--,j++){ *(t+j) = *(p+i); } for (i=0; i<=lar; i++){ } return 0; }
Esta parte es la que quiero reemplazar y no lo logro. for (i=0; i<=lar; i++){ }
Me podrían decir donde estoy fallando? Dano.
|
|
|
|
|
|
|