Guia Laboratorio 3
GUIA DE LABORATORIO Nº3
PUNTEROS
OBJETIVOS
Al finalizar esta práctica el usuario estará capacitado en realizar lo siguiente:
1. Crear una variable puntero, manipular
2. Crear funciones que acepten como parámetros los punteros.
3. Aritmetica de punteros, cadenas como punteros, otras.
.
Ejem 1.
#include
using namespace std;
//muestra el uso de variables y punteros
int main()
{
inti; // i variable entera
int *pi; // pi variable puntero a entero
i=30;
pi=&i; cout<<"i: "< cout<<"pi: "<
cout<<"*pi: "<<*pi<
Ejem 2.
#include
using namespace std;
//punteros y sentencias de asignacion
int main()
{
int i, j; // variables enteras
int *pi, *pj; //variables puntero a entero
// parte 1
i=100;
pi=&i; //asignar la direccion de i a pj
pj=pi; //asignar pi a pj
cout<<"Parte 1"<
Prof.: Ing. Felix Huari E.
Algoritmos y Estructura de Datos
2/7
j=500;
pj=&j; cout<<"Parte 2"<
<<*pj<
*pi=*pj; cout<<"Parte 3"<
Ejem 3.
#include
#include
using namespace std;
int main()
{
char st[25];
char *ptr, c = 't';
strcpy(st, "Esto es una cadena");
ptr = strchr(st, c);
if (ptr)
cout<<"Elcaracter "<
else
cout<<"El caracter "<
Ejem 4.
#include
#include
using namespace std;
int main()
{ char *cade1;
int longitud;
cade1 = "ALGORITMOS Y ESTRUCTURA DE DATOS";
longitud = strlen(cade1);
cout<<"La cadena "<
Prof.: Ing. FelixHuari E.
Algoritmos y Estructura de Datos
3/7
Ejem 5.
#include
using namespace std;
// usa punteros a array de cadenas
const int MAX=80;
// funciones prototipo
int longcad(char *s);
int comparacad(char *s1, char *s2);
void copiacad(char *dest, char *orig);
int main()
{
char buffer[MAX]; buffer[0]='\0';
cout<<"<1>longcad(buffer)="<
cout<<"<2> buffer: "<
cout<
cout<
//Definiendo las funciones
int longcad(char *s)
{
int i=0;
while (s[i]!=0)
++i;return i;
}
int comparacad(char *s1, char *s2)
{
int i=0;
for ( ; s1[i]!=0 && s1[i]==s2[i]; i++)
return (int)(s1[i]-s2[i]);
}
void copiacad(char *dest, char *orig)
{
int i=0;
for ( ; orig[i]!=0; i++)
dest[i]=orig[i];
dest[i]=0;
}
Prof.: Ing. Felix Huari E.
Algoritmos y Estructura de Datos
4/7
Ejem 6.
#include
using namespace std;
// usa punteros a array de cadenas
const int MAX=80;//Definicion de las funciones
int longcad(char *s)
{ int i=0;
while (*s!=0)
{++i; s++;
}
return i;
}
int comparacad(char *s1, char *s2)
{ int i=0,t;
for (t=*s1-*s2 ; *s1!=0 && *s1==*s2;)
{++s1,++s2;
t=*s1-*s2;
}
return t;
}
void copiacad(char *dest, char *orig)
{ for ( ; *orig!=0; orig++,dest++)
*dest=*orig;
*dest=0;
}
//Funcion principal
int main()
{ char buffer[MAX]; buffer[0]='\0';...
Regístrate para leer el documento completo.