Articles of cadena de

Cadena inversa utilizando punteros.

Estoy tratando de revertir una cadena usando punteros. Cuando bash imprimir la cadena invertida en lugar de obtener DCBA, salgo solo como BA. ¿Alguien puede ayudarme en esto? #include void reverse(char *); void main() { char str[5] = “ABCD”; reverse(str); } void reverse(char *str) { char *rev_str = str; char temp; while(*str) str++; –str; while(rev_str […]

¿Qué sucede con la memoria después de ‘\ 0’ en una cadena C?

Sorprendentemente simple / estúpida / básica pregunta, pero no tengo idea: supongamos que quiero devolverle al usuario de mi función un C-string, cuya longitud no conozco al principio de la función. Solo puedo colocar un límite superior en la longitud al principio y, dependiendo del procesamiento, el tamaño puede reducirse. La pregunta es, ¿hay algún […]

¿Por qué no está cambiando `src` cuando lo cambio desde la función?

Mi progtwig: #include #include char* str(char*src);\\declared as function global main() { char src[40]=”hello”; clrscr(); puts(src); str(src);\\ function called puts(src);\\does not put changed string? getch(); return 0; } char* str( char *src) { src=”readers”;\\changing my source string<–is it changes??? return src;\\returning source sting } salida: hello hello ¿Por qué src no se está convirtiendo en “readers” […]

¿Asignando memoria a doble puntero?

Tengo problemas para entender cómo asignar memoria a un puntero doble. Quiero leer un conjunto de cadenas y almacenarlo. char **ptr; fp = fopen(“file.txt”,”r”); ptr = (char**)malloc(sizeof(char*)*50); for(int i=0; i<20; i++) { ptr[i] = (char*)malloc(sizeof(char)*50); fgets(ptr[i],50,fp); } En lugar de esto, solo asigno un gran bloque de memoria y almaceno la cadena char **ptr; ptr […]

¿Cómo leer una secuencia de enteros separados por espacios hasta que se encuentra el carácter de nueva línea?

He estado tratando de escribir un progtwig que lea una secuencia de enteros separados por espacios hasta que se encuentre el carácter de nueva línea. atoi() enfoque fue leer la entrada como una cadena y usar atoi() para convertir la cadena en un entero. Este es mi enfoque: #include #include #include int main() { int […]

Límite de traducción en C

Estoy intentando capturar información del usuario a través de scanf: char numStrings[5000]; printf(“Enter string of numbers:\n\n”); scanf(“%s”, numStrings); Sin embargo, la longitud de la cadena que se ingresa es de 5000 caracteres. El límite de traducción en c99 es de 4095 caracteres. ¿Debo dar instrucciones al usuario para que rompa su entrada a la mitad […]

Almacenamiento de cadenas de un archivo a una matriz

He leído las cadenas de dos archivos y las he almacenado en dos matrices separadas. Luego, intenté clasificarlas y escribirlas en otro archivo … Esta parte funciona de la manera que se supone que debo hacer, pero lo que realmente necesito hacer es combinar las cadenas de las dos matrices en una para que pueda […]

Asignación de memoria dinámica para cadenas en c

Encontré este código funcionando perfectamente. #include #include int main(int argc,char *argv[]) { char* s; /* input string */ s=malloc(sizeof(s)); int c; if(argc==1){ // if file name not given while (gets(s)){ puts(s); } } } Lo que no entiendo es cómo se almacena la cadena en la memoria. Estoy asignando memoria solo para el puntero, que […]

Devolviendo una matriz de cadenas en C

Estoy trabajando en una tarea en la que debo tener un método para devolver un puntero a una matriz de cadenas, leer desde un archivo. La función funciona, pero cuando bash asignar el puntero devuelto a una variable en la función principal, termino con una matriz de valores nulos. Aquí está mi código: #include char […]

Advertencia de conversión de cadena const a char * al inicializar la matriz de cadenas C

Solía ​​hacer lo siguiente para declarar e inicializar una matriz de cadena en C: char *myTable[] = { “ABC”, “Y”, “*”, “*”, “WXYZ”, “Y”, “*”, “*”, “MNO”, “Y”, “*”, “*”, NULL, NULL,NULL, NULL }; Los NULL son para uso interno. Desde que me mudé a gcc 4.4.6, recibo una advertencia: abc.cpp:74: warning: deprecated conversion from […]