C | Conceptos básicos del puntero | Pregunta 15

#include<stdio.h>    void swap (char *x, char *y) {     char *t = x;     x = y;     y = t; }    int main() {     char *x = «geeksquiz»;     char *y = «geeksforgeeks»;     char *t;     swap(x, y);     printf(«(%s, %s)», x, y);     t = x;     x = y;     y = t;     printf(«\n(%s, %s)», x, y);     return 0; … Continue reading «C | Conceptos básicos del puntero | Pregunta 15»

C | Conceptos básicos del puntero | Pregunta 17 – Part 1

#include<stdio.h> void fun(int arr[]) {   int i;   int arr_size = sizeof(arr)/sizeof(arr[0]);   for (i = 0; i < arr_size; i++)       printf(«%d «, arr[i]); }    int main() {   int i;   int arr[4] = {10, 20 ,30, 40};   fun(arr);   return 0; }  (A) 10 20 30 40 (B) Dependiente de la máquina (C) 10 20 (D) Norte … Continue reading «C | Conceptos básicos del puntero | Pregunta 17 – Part 1»

Diferencia entre puntero constante, punteros a constante y punteros constantes a constantes

En este artículo, discutiremos las diferencias entre puntero constante , punteros a constante y punteros constantes a constantes . Los punteros son las variables que contienen la dirección de algunas otras variables, constantes o funciones. Hay varias formas de calificar punteros usando const . Punteros a constante. Punteros constantes. Punteros constantes a constante. Punteros a … Continue reading «Diferencia entre puntero constante, punteros a constante y punteros constantes a constantes»

C | Conceptos básicos del puntero | Pregunta 17 – Part 2

#include <stdio.h> void f(char**); int main() {     char *argv[] = { «ab», «cd», «ef», «gh», «ij», «kl» };     f(argv);     return 0; } void f(char **p) {     char *t;     t = (p += sizeof(int))[-1];     printf(«%s\n», t); } (A) ab (B) cd (C) ef (D) gh Respuesta: (D) Explicación: argv es una array de punteros de tipo … Continue reading «C | Conceptos básicos del puntero | Pregunta 17 – Part 2»

¿Por qué necesitamos variables de referencia si tenemos punteros?

Punteros : un puntero es una variable que contiene la dirección de memoria de otra variable. Un puntero debe ser referenciado con el operador * para acceder a la ubicación de memoria a la que apunta. Referencias : una referencia se puede llamar como un puntero constante que se desreferencia implícitamente. Cuando accedemos a la … Continue reading «¿Por qué necesitamos variables de referencia si tenemos punteros?»

Aritmética de punteros en C con ejemplos

Las variables de puntero también se conocen como tipos de datos de dirección porque se utilizan para almacenar la dirección de otra variable. La dirección es la ubicación de memoria que se asigna a la variable. No almacena ningún valor.  Por lo tanto, solo hay unas pocas operaciones que se permiten realizar en punteros en … Continue reading «Aritmética de punteros en C con ejemplos»

Diferencia entre puntero NULL, carácter nulo (‘\\ 0’) y ‘0’ en C con ejemplos

Puntero NULL : La constante entera cero ( 0 ) tiene diferentes significados dependiendo de su uso. En todos los casos, es una constante entera con el valor 0, solo se describe de diferentes maneras. Si algún puntero se compara con 0 , esta es una verificación para ver si el puntero es un puntero … Continue reading «Diferencia entre puntero NULL, carácter nulo (‘\\ 0’) y ‘0’ en C con ejemplos»

C | Conceptos básicos del puntero | Pregunta 16

#include <stdio.h> int main() {     int arr[] = {1, 2, 3, 4, 5};     int *p = arr;     ++*p;     p += 2;     printf(«%d», *p);     return 0; } (A) 2 (B) 3 (C) 4 (D) Error del compilador Respuesta: (B) Explicación: La expresión ++*p se evalúa como “++(*p)”. Entonces incrementa el valor del primer elemento de la … Continue reading «C | Conceptos básicos del puntero | Pregunta 16»

Orden de ejecución en la lista de inicializadores en C++

Requisito previo: Clases , Constructores , Lista de inicializadores En este artículo, discutiremos el orden de ejecución en la lista de inicializadores en C++ . Generalmente, el orden de ejecución es de arriba a abajo y de izquierda a derecha. Pero surge una rara condición en la que esta regla falla cuando la lista de … Continue reading «Orden de ejecución en la lista de inicializadores en C++»

Comportamiento inusual con punteros de caracteres

En C++ , cout muestra un comportamiento de impresión diferente con punteros/arrays de caracteres a diferencia de los punteros/arrays de otros tipos de datos. Entonces, este artículo primero explicará cómo cout se comporta de manera diferente con los punteros de caracteres, y luego se discutirá la razón y el mecanismo de trabajo detrás de esto. … Continue reading «Comportamiento inusual con punteros de caracteres»