Tutoriales de c

Introducción

Un puntero es una variable que contiene la dirección de memoria de variable. Se utilizan para pasar información entre una función y sus puntos de llamada.

Existe dos operadores especiales para trabajar con punteros: & y *.

El primero devuelve la dirección de memoria de su operador.
El segundo devuelve el valor de la variable cuya dirección es contenida por el puntero.

Ejemplo con &: formula general.

#include<iostream.h>
#include<conio.h>
#include<math.h>

int formula(int, int, int , float &, float &);

void main(){
  int a, b, c, opc;
  float x1, x2;
  clrscr();
  cout<<"Escribe a: "; cin>>a;
  cout<<"Escribe b: "; cin>>b;
  cout<<"Escribe c: "; cin>>c;
  opc=formula(a,b,c,x1,x2);
  if(opc==1)
    cout<<"No div entre 0.";
  else if(opc==2)
    cout<<"No raiz imaginaria.";
  else
    cout<<"X1 = "<<x1<<endl<<"X2 = "<<x2;
  getch();
}

int formula(int a, int b, int c, float &x1, float &x2){
  float div, rais;
  div=2*a;
  rais=(b*b) - (4*a*c);
  if(div>0){
    if(rais>=0){
	x1=(-b + sqrt(rais))/div;
	x2=(-b - sqrt(rais))/div;
	return 0;
    }
    else
	return 2;
  }
  else
    return 1;
}


Ejemplo con *: área de un triangulo.

#include<stdio.h>
#include<conio.h>

void area(int b,int h,float *a);
void main(void){
int b,h;
float a;
  clrscr();
  printf("

Escribe la base: ");
  scanf("%d",&b);
  printf("Escribe la altura: ");
  scanf("%d",&h);
  area(b,h,&a);
  printf("
 El area es: %.2f",(float)a);
getch();
}

void area(int b,int h,float *a){
  *a = (b*h)/2;
}


Autor: Gamaliel M. DescargarDescargar

Comentarios en "Manejo de punteros en c, c++"

Table 'programa_programas.t_comentarios' doesn't exist