Sunteți pe pagina 1din 83

Introduccin al lenguaje C

Programacin 2
Instituto de Computacin, Facultad de Ingeniera,
Universidad de la Repblica, Uruguay

2 de marzo de 2016

Programacin 2

Introduccin al lenguaje C

2 de marzo de 2016

1 / 34

Objetivos

Mostar las principales caractersticas del lenguaje que ser utilizado en


el curso.

Programacin 2

Introduccin al lenguaje C

2 de marzo de 2016

2 / 34

Objetivos

Mostar las principales caractersticas del lenguaje que ser utilizado en


el curso.
Ver sus diferencias con Pascal.

Programacin 2

Introduccin al lenguaje C

2 de marzo de 2016

2 / 34

Objetivos

Mostar las principales caractersticas del lenguaje que ser utilizado en


el curso.
Ver sus diferencias con Pascal.

A partir de esta clase van a necesitar salir a practicar bastante de C


para familiarizarse. Esta clase apunta a ser una ayuda inicial.

Programacin 2

Introduccin al lenguaje C

2 de marzo de 2016

2 / 34

Objetivos

Mostar las principales caractersticas del lenguaje que ser utilizado en


el curso.
Ver sus diferencias con Pascal.

A partir de esta clase van a necesitar salir a practicar bastante de C


para familiarizarse. Esta clase apunta a ser una ayuda inicial.
Recordar que Programacin 2 no es un curso sobre C, sino sobre
Estructuras de Datos y Algoritmos.

Programacin 2

Introduccin al lenguaje C

2 de marzo de 2016

2 / 34

Lenguaje

Lenguaje: C*
Es el lenguaje C, pero sumndole algunas (pocas) cosas de C++
Es ficticio

Programacin 2

Introduccin al lenguaje C

2 de marzo de 2016

3 / 34

Comparacin con Pascal

hola.pas:

hola.cpp:
#include <stdio.h>

program Hola;
begin
writeln('Hola, mundo!');
end.

Programacin 2

int main()
{
printf("Hola, mundo!\n");
return 0;
}

Introduccin al lenguaje C

2 de marzo de 2016

4 / 34

Comparacin con Pascal

hola.pas:

hola.cpp:
#include <stdio.h>

program Hola;
begin
writeln('Hola, mundo!');
end.

int main()
{
printf("Hola, mundo!\n");
return 0;
}

main es una funcin especial, a partir de la cual comienza la ejecucin del


programa

Programacin 2

Introduccin al lenguaje C

2 de marzo de 2016

4 / 34

Compilacin

Archivos con extensin .cpp

Programacin 2

Introduccin al lenguaje C

2 de marzo de 2016

5 / 34

Compilacin

Archivos con extensin .cpp


Se compila y enlaza con g++ (compilador de C++)

Programacin 2

Introduccin al lenguaje C

2 de marzo de 2016

5 / 34

Compilacin

Archivos con extensin .cpp


Se compila y enlaza con g++ (compilador de C++)
Compilo programa.cpp:
g++ -c programa.cpp
generando el archivo programa.o

Programacin 2

Introduccin al lenguaje C

2 de marzo de 2016

5 / 34

Compilacin

Archivos con extensin .cpp


Se compila y enlaza con g++ (compilador de C++)
Compilo programa.cpp:
g++ -c programa.cpp
generando el archivo programa.o
Enlazo:
g++ programa.o -o programa
generando el ejecutable programa

Programacin 2

Introduccin al lenguaje C

2 de marzo de 2016

5 / 34

Compilacin

Archivos con extensin .cpp


Se compila y enlaza con g++ (compilador de C++)
Compilo programa.cpp:
g++ -c programa.cpp
generando el archivo programa.o
Enlazo:
g++ programa.o -o programa
generando el ejecutable programa
O directamente:
g++ programa.cpp -o programa

Programacin 2

Introduccin al lenguaje C

2 de marzo de 2016

5 / 34

Tipos de datos elementales


Entero: int

Programacin 2

Introduccin al lenguaje C

2 de marzo de 2016

6 / 34

Tipos de datos elementales


Entero: int
Caracter: char

Programacin 2

Introduccin al lenguaje C

2 de marzo de 2016

6 / 34

Tipos de datos elementales


Entero: int
Caracter: char
Real: float

Programacin 2

Introduccin al lenguaje C

2 de marzo de 2016

6 / 34

Tipos de datos elementales


Entero: int
Caracter: char
Real: float
Booleano: bool (de C++)

Programacin 2

Introduccin al lenguaje C

2 de marzo de 2016

6 / 34

Tipos de datos elementales


Entero: int
Caracter: char
Real: float
Booleano: bool (de C++)
Ejemplos:
int i;
char c;
float f;
bool b;
i = 1;
b = false;

Programacin 2

Introduccin al lenguaje C

2 de marzo de 2016

6 / 34

Declaracin de variables

Las variables pueden ser declaradas en cualquier lugar.

Programacin 2

Introduccin al lenguaje C

2 de marzo de 2016

7 / 34

Declaracin de variables

Las variables pueden ser declaradas en cualquier lugar.


Recomendacin: declararlas cuando se usan por primera vez.

Programacin 2

Introduccin al lenguaje C

2 de marzo de 2016

7 / 34

Declaracin de variables

Las variables pueden ser declaradas en cualquier lugar.


Recomendacin: declararlas cuando se usan por primera vez.
Mito comn: pensar que declararlas fuera de bucles es ms eficiente.

Programacin 2

Introduccin al lenguaje C

2 de marzo de 2016

7 / 34

Declaracin de variables

Las variables pueden ser declaradas en cualquier lugar.


Recomendacin: declararlas cuando se usan por primera vez.
Mito comn: pensar que declararlas fuera de bucles es ms eficiente.

int minimo(int tam, int[] arreglo) {


int iMin = 0;
for (int i = 1; i < tam; i++)
if (arreglo[i] < arreglo[iMin])
iMin = i;
return arreglo[iMin];
}

Programacin 2

Introduccin al lenguaje C

2 de marzo de 2016

7 / 34

Comentarios

/* comentario
de
varias
lineas */
int i = 1; /* asigno 1 a i */
char c; // comentario de una linea (C++)
float f;
// otro comentario

Programacin 2

Introduccin al lenguaje C

2 de marzo de 2016

8 / 34

Expresiones I

Operador de asignacin: =
int a;
int b = 2;
a = 7;
a = b;

Programacin 2

Introduccin al lenguaje C

2 de marzo de 2016

9 / 34

Expresiones I

Operador de asignacin: =
int a;
int b = 2;
a = 7;
a = b;

La asignacin retorna un valor, por lo que es vlido: a = b = 9

Programacin 2

Introduccin al lenguaje C

2 de marzo de 2016

9 / 34

Expresiones I

Operador de asignacin: =
int a;
int b = 2;
a = 7;
a = b;

La asignacin retorna un valor, por lo que es vlido: a = b = 9


Error comn: confundir con comparacin booleana de Pascal

Programacin 2

Introduccin al lenguaje C

2 de marzo de 2016

9 / 34

Expresiones II

Operadores de comparacin: ==, !=, <, <=, > y >=

Programacin 2

Introduccin al lenguaje C

2 de marzo de 2016

10 / 34

Expresiones II

Operadores de comparacin: ==, !=, <, <=, > y >=


Operadores lgicos: &&, || y !

Programacin 2

Introduccin al lenguaje C

2 de marzo de 2016

10 / 34

Expresiones II

Operadores de comparacin: ==, !=, <, <=, > y >=


Operadores lgicos: &&, || y !
Operadores aritmticos: +, -, *, / y %

Programacin 2

Introduccin al lenguaje C

2 de marzo de 2016

10 / 34

Expresiones II

Operadores de comparacin: ==, !=, <, <=, > y >=


Operadores lgicos: &&, || y !
Operadores aritmticos: +, -, *, / y %
Precedencia:
a+1 < b && c == 9*d || e < 7

equivale a:
(((a+1) < b) && (c == (9*d))) || (e < 7)

Programacin 2

Introduccin al lenguaje C

2 de marzo de 2016

10 / 34

Expresiones III

Incremento y decremento: ++ y --

Programacin 2

Introduccin al lenguaje C

2 de marzo de 2016

11 / 34

Expresiones III

Incremento y decremento: ++ y -++a incrementa el valor de a y retorna su valor luego del incremento

Programacin 2

Introduccin al lenguaje C

2 de marzo de 2016

11 / 34

Expresiones III

Incremento y decremento: ++ y -++a incrementa el valor de a y retorna su valor luego del incremento
a++ incrementa el valor de a y retorna su valor antes del incremento

Programacin 2

Introduccin al lenguaje C

2 de marzo de 2016

11 / 34

Expresiones III

Incremento y decremento: ++ y -++a incrementa el valor de a y retorna su valor luego del incremento
a++ incrementa el valor de a y retorna su valor antes del incremento
Anlogo para decrementar

Programacin 2

Introduccin al lenguaje C

2 de marzo de 2016

11 / 34

Expresiones III

Incremento y decremento: ++ y -++a incrementa el valor de a y retorna su valor luego del incremento
a++ incrementa el valor de a y retorna su valor antes del incremento
Anlogo para decrementar

int
int
b =
c =

a = 1;
b, c;
++a;
a++;

Programacin 2

Introduccin al lenguaje C

2 de marzo de 2016

11 / 34

Expresiones III

Incremento y decremento: ++ y -++a incrementa el valor de a y retorna su valor luego del incremento
a++ incrementa el valor de a y retorna su valor antes del incremento
Anlogo para decrementar

Valores finales:
int
int
b =
c =

a = 1;
b, c;
++a;
a++;

Programacin 2

Introduccin al lenguaje C

2 de marzo de 2016

11 / 34

Expresiones III

Incremento y decremento: ++ y -++a incrementa el valor de a y retorna su valor luego del incremento
a++ incrementa el valor de a y retorna su valor antes del incremento
Anlogo para decrementar

Valores finales:
int
int
b =
c =

a = 1;
b, c;
++a;
a++;

Programacin 2

a3

Introduccin al lenguaje C

2 de marzo de 2016

11 / 34

Expresiones III

Incremento y decremento: ++ y -++a incrementa el valor de a y retorna su valor luego del incremento
a++ incrementa el valor de a y retorna su valor antes del incremento
Anlogo para decrementar

Valores finales:
int
int
b =
c =

a = 1;
b, c;
++a;
a++;

Programacin 2

a3
b2

Introduccin al lenguaje C

2 de marzo de 2016

11 / 34

Expresiones III

Incremento y decremento: ++ y -++a incrementa el valor de a y retorna su valor luego del incremento
a++ incrementa el valor de a y retorna su valor antes del incremento
Anlogo para decrementar

Valores finales:
int
int
b =
c =

a = 1;
b, c;
++a;
a++;

Programacin 2

a3
b2
c 2

Introduccin al lenguaje C

2 de marzo de 2016

11 / 34

Constantes I

Se pueden definir utilizando define:


#include <stdio.h>
#define BASE 10
#define ALTURA 5
int main() {
int area = BASE * ALTURA;
printf("Area: %d", area);
return 0;
}

Programacin 2

Introduccin al lenguaje C

2 de marzo de 2016

12 / 34

Constantes II
O usando const:
#include <stdio.h>
int main() {
const int BASE = 10;
const int ALTURA = 5;
int area = BASE * ALTURA;
printf("Area: %d", area);
return 0;
}

Programacin 2

Introduccin al lenguaje C

2 de marzo de 2016

13 / 34

Constantes II
O usando const:
#include <stdio.h>
int main() {
const int BASE = 10;
const int ALTURA = 5;
int area = BASE * ALTURA;
printf("Area: %d", area);
return 0;
}

La diferencia es que define es un reemplazo de texto antes de


compilar y const utiliza variables (y por lo tanto tiene su espacio de
memoria, su tipo, etc.) que no se pueden modificar.

Programacin 2

Introduccin al lenguaje C

2 de marzo de 2016

13 / 34

Constantes II
O usando const:
#include <stdio.h>
int main() {
const int BASE = 10;
const int ALTURA = 5;
int area = BASE * ALTURA;
printf("Area: %d", area);
return 0;
}

La diferencia es que define es un reemplazo de texto antes de


compilar y const utiliza variables (y por lo tanto tiene su espacio de
memoria, su tipo, etc.) que no se pueden modificar.
Es buena prctica definir los nombres de las constantes en maysculas.

Programacin 2

Introduccin al lenguaje C

2 de marzo de 2016

13 / 34

Estructuras de control I

Seleccin
Sentencia if:
if (6 <= valor && valor <= 12) {
printf("Aprobado");
cantidad_aprobados++;
} else if (valor >= 3)
printf("Examen");
else if (valor >= 0)
printf("Reprobado");
else
printf("Valor incorrecto");

Programacin 2

Introduccin al lenguaje C

2 de marzo de 2016

14 / 34

Estructuras de control II
Seleccin
Sentencia switch:
switch (valor) {
case 6: case 7: case 8: case 9: case 10: case 11: case 12:
printf("Aprobado");
cantidad_aprobados++;
break;
case 3: case 4: case 5:
printf("Examen");
break;
case 0: case 1: case 2:
printf("Reprobado");
break;
default:
printf("Valor incorrecto");
}

Programacin 2

Introduccin al lenguaje C

2 de marzo de 2016

15 / 34

Estructuras de control III

Iteracin

Programacin 2

Introduccin al lenguaje C

2 de marzo de 2016

16 / 34

Estructuras de control III

Iteracin
Sentencia while:
while (condicion)
cuerpo

int i = 0;
while (i < 10) {
printf("*");
i++;
}

Programacin 2

Introduccin al lenguaje C

2 de marzo de 2016

16 / 34

Estructuras de control IV

Iteracin
Sentencia for:
for (inicio; condicion; paso)
cuerpo

for (int i = 0; i < 10; i++)


printf("*");

Programacin 2

Introduccin al lenguaje C

2 de marzo de 2016

17 / 34

Tipos de datos estructurados I

Enumerados: enum
enum mes {enero, febrero, marzo, abril, mayo, junio, julio, agosto, setiembre, octubre, noviembre, diciembre};
mes este_mes = marzo;

Programacin 2

Introduccin al lenguaje C

2 de marzo de 2016

18 / 34

Tipos de datos estructurados II


Estructuras: struct
struct fecha {
int f_dia;
mes f_mes;
int f_anio;
};

Programacin 2

Introduccin al lenguaje C

2 de marzo de 2016

19 / 34

Tipos de datos estructurados II


Estructuras: struct
struct fecha {
int f_dia;
mes f_mes;
int f_anio;
};

Se usa . para acceder a los miembros:


fecha hoy;
hoy.f_dia = 2;
hoy.f_mes = marzo;
hoy.f_anio = 2016;
int dia_hoy = hoy.f_dia;

Programacin 2

Introduccin al lenguaje C

2 de marzo de 2016

19 / 34

Tipos de datos estructurados II


Estructuras: struct
struct fecha {
int f_dia;
mes f_mes;
int f_anio;
};

Se usa . para acceder a los miembros:


fecha hoy;
hoy.f_dia = 2;
hoy.f_mes = marzo;
hoy.f_anio = 2016;
int dia_hoy = hoy.f_dia;

Nota: esta es la forma de declarar estructuras y enumerados en C++


(y en C*). En C es ligeramente distinto.
Programacin 2

Introduccin al lenguaje C

2 de marzo de 2016

19 / 34

Tipos de datos estructurados III


Punteros
int * p; // p es un puntero a un nmero entero
int i;
p = &i; // p apunta a la direccin de i
*p = 10; // i toma el valor 10
int* p2;
p2 = p; // p2 apunta a la direccin de i
p = NULL; // as se deja en NULL un puntero
p = new int; // as se pide memoria
delete p; // se libera la memoria apuntada por p

Programacin 2

Introduccin al lenguaje C

2 de marzo de 2016

20 / 34

Tipos de datos estructurados III


Punteros
int * p; // p es un puntero a un nmero entero
int i;
p = &i; // p apunta a la direccin de i
*p = 10; // i toma el valor 10
int* p2;
p2 = p; // p2 apunta a la direccin de i
p = NULL; // as se deja en NULL un puntero
p = new int; // as se pide memoria
delete p; // se libera la memoria apuntada por p

Notar que estara mal liberar la memoria asignada a p2 ya que no es


memoria asignada dinmicamente.

Programacin 2

Introduccin al lenguaje C

2 de marzo de 2016

20 / 34

Tipos de datos estructurados III


Punteros
int * p; // p es un puntero a un nmero entero
int i;
p = &i; // p apunta a la direccin de i
*p = 10; // i toma el valor 10
int* p2;
p2 = p; // p2 apunta a la direccin de i
p = NULL; // as se deja en NULL un puntero
p = new int; // as se pide memoria
delete p; // se libera la memoria apuntada por p

Notar que estara mal liberar la memoria asignada a p2 ya que no es


memoria asignada dinmicamente.
new y delete son de C++
Programacin 2

Introduccin al lenguaje C

2 de marzo de 2016

20 / 34

Tipos de datos estructurados IV


Punteros
int *p3; // el asterisco puede ir junto a la variable (a la izquierda)
int* p4, p5;

Programacin 2

Introduccin al lenguaje C

2 de marzo de 2016

21 / 34

Tipos de datos estructurados IV


Punteros
int *p3; // el asterisco puede ir junto a la variable (a la izquierda)
int* p4, p5;

p5 es un puntero? No, la declaracin anterior es equivalente a la


siguiente:
int* p4;
int p5;

Programacin 2

Introduccin al lenguaje C

2 de marzo de 2016

21 / 34

Tipos de datos estructurados IV


Punteros
int *p3; // el asterisco puede ir junto a la variable (a la izquierda)
int* p4, p5;

p5 es un puntero? No, la declaracin anterior es equivalente a la


siguiente:
int* p4;
int p5;

Es como si el asterisco se pegara a la variable y no al tipo

Programacin 2

Introduccin al lenguaje C

2 de marzo de 2016

21 / 34

Tipos de datos estructurados IV


Punteros
int *p3; // el asterisco puede ir junto a la variable (a la izquierda)
int* p4, p5;

p5 es un puntero? No, la declaracin anterior es equivalente a la


siguiente:
int* p4;
int p5;

Es como si el asterisco se pegara a la variable y no al tipo


Si queremos dos punteros:
int* p4, * p5;
Programacin 2

Introduccin al lenguaje C

2 de marzo de 2016

21 / 34

Tipos de datos estructurados V

Punteros y estructuras
(*puntero_fecha).f_dia = 4;
puntero_fecha->f_dia = 4; // ms fcil

Programacin 2

Introduccin al lenguaje C

2 de marzo de 2016

22 / 34

Tipos de datos estructurados VI


Arreglos

Programacin 2

Introduccin al lenguaje C

2 de marzo de 2016

23 / 34

Tipos de datos estructurados VI


Arreglos
Varios objetos del mismo tipo puestos consecutivamente en memoria

Programacin 2

Introduccin al lenguaje C

2 de marzo de 2016

23 / 34

Tipos de datos estructurados VI


Arreglos
Varios objetos del mismo tipo puestos consecutivamente en memoria
El primer elemento est en el ndice 0

Programacin 2

Introduccin al lenguaje C

2 de marzo de 2016

23 / 34

Tipos de datos estructurados VI


Arreglos
Varios objetos del mismo tipo puestos consecutivamente en memoria
El primer elemento est en el ndice 0
Estticos:
int arr[2]; // valores posibles: arr[0] y arr[1]
int vector[5] = {1, 2, 3, 4, 5};
int matriz[2][3] = {{1, 2, 3}, {4, 5, 6}};
int suma = 0;
for (int i = 0; i < 5; i++)
suma += vector[i];

Programacin 2

Introduccin al lenguaje C

2 de marzo de 2016

23 / 34

Tipos de datos estructurados VI


Arreglos
Varios objetos del mismo tipo puestos consecutivamente en memoria
El primer elemento est en el ndice 0
Estticos:
int arr[2]; // valores posibles: arr[0] y arr[1]
int vector[5] = {1, 2, 3, 4, 5};
int matriz[2][3] = {{1, 2, 3}, {4, 5, 6}};
int suma = 0;
for (int i = 0; i < 5; i++)
suma += vector[i];

Dinmicos:
int* vector = new int[10];
delete [] vector;

Programacin 2

Introduccin al lenguaje C

2 de marzo de 2016

23 / 34

Tipos de datos estructurados VII

Arreglos
Tener en cuenta que ni C ni C++ verifican que el ndice est dentro del
rango permitido. Te deja as acceder a otra direccin de memoria, y a
veces puede dar segmentation fault.

Programacin 2

Introduccin al lenguaje C

2 de marzo de 2016

24 / 34

Conversin de tipos I
La mayora de las conversiones son implcitas
float vf = 1.6;
int vi = 1 + vf; // vi = 2 (float se trunca)
vi = 1 + vf + vf; // vi = 4 (cast al "ms grande")
vi = vi + true; // vi = 5 (true es 1)
vi = vi + false; // vi = 5 (false es 0)
vi = 'a' + 1; // vi = 98 (valor ASCII)
char vc = 'a' + 1; // vc = 'b'
vf = 1.5 + vi // vf = 99.500000
bool vb = 237; // vb = true (0 es false, otro true)
vf = 3 / 2; // vf = 1.000000

Se puede hacer cast explcito


vf = (float)3 / 2; // vf = 1.500000

Programacin 2

Introduccin al lenguaje C

2 de marzo de 2016

25 / 34

Conversin de tipos II

Cul es el valor de res?


int res;
int i = 5 - 4.3;
bool b = 100.1;
if (i = 0)
res = b + 100.9;
else
res = b + i;

El resultado es 1?
Error comn: haber puesto = en lugar de ==. Aunque el resultado
es 1, si cambiamos por == obtenemos 101.

Programacin 2

Introduccin al lenguaje C

2 de marzo de 2016

26 / 34

Funciones I

Funciones
int sumar(int a, int b) {
return a + b;
}

Se puede invocar as:


c = sumar(3, 8);

Programacin 2

Introduccin al lenguaje C

2 de marzo de 2016

27 / 34

Funciones II

Procedimientos
void imprimirSuma(int a, int b) {
int suma = a + b;
printf("La suma es: %d\n", suma);
}

Programacin 2

Introduccin al lenguaje C

2 de marzo de 2016

28 / 34

Funciones III
Las funciones no se puede anidar
En C todos los parmetros se pasan por valor
En C++ (y C*) existe el pasaje por referencia (&)
void sumarEnB(int a, int & b) {
b = a + b;
}

No confundir con el operador & de punteros

En C el pasaje por referencia se simula utilizando punteros


void inc(int *i) {
(*i) += 1;
}

Se puede invocar as: inc(&valor);


Programacin 2

Introduccin al lenguaje C

2 de marzo de 2016

29 / 34

Entrada/Salida I
printf: impresin en salida estndar
printf("hola mundo\n");
printf("-> %d, ", estructura->dato);
printf("( %d, %d)\n", pri, seg);

Funcin especial que recibe una cantidad variable de parmetros


El primer parmetro es la cadena de texto de formato
El resto depende de los especificadores de formato que se encuentren
en el primero
Especificadores:
%d
%c
%f
%s

int
char
float
char*

Algunas secuencias especiales: \, \", \\, \n, \t


Programacin 2

Introduccin al lenguaje C

2 de marzo de 2016

30 / 34

Entrada/Salida II

scanf: lectura en la entrada estndar


La cadena de texto de formato es igual que en printf
Pero los parmetros tienen que ser punteros (para poder modificarlos)
int val, cant;
char str [10];
cant = scanf(" %d- %s", &val, str);

89-bla cant = 2, val = 89, str = bla


89bla cant = 1, val = 89, str = ??
bla cant = EOF, val = ??, str = ??

Programacin 2

Introduccin al lenguaje C

2 de marzo de 2016

31 / 34

Entrada/Salida III

Ambas funciones estn en la biblioteca estndar de C, en stdio.h


(Standard Input-Output o Entrada y salida estndar)
Para poder usarlas, se debe importar la biblioteca:
#include <stdio.h>

En C++ existen cin y cout para la entrada y salida estndar, pero


en este curso preferimos usar el estilo C

Programacin 2

Introduccin al lenguaje C

2 de marzo de 2016

32 / 34

C*: C con algunas cosas de C++

En resumen, C* es C pero con las siguientes cosas de C++:


new y delete

Programacin 2

Introduccin al lenguaje C

2 de marzo de 2016

33 / 34

C*: C con algunas cosas de C++

En resumen, C* es C pero con las siguientes cosas de C++:


new y delete
Comentarios en lnea

Programacin 2

Introduccin al lenguaje C

2 de marzo de 2016

33 / 34

C*: C con algunas cosas de C++

En resumen, C* es C pero con las siguientes cosas de C++:


new y delete
Comentarios en lnea
Declaracin de tipos como en C++ para registros y enumerados

Programacin 2

Introduccin al lenguaje C

2 de marzo de 2016

33 / 34

C*: C con algunas cosas de C++

En resumen, C* es C pero con las siguientes cosas de C++:


new y delete
Comentarios en lnea
Declaracin de tipos como en C++ para registros y enumerados
Pasaje por referencia

Programacin 2

Introduccin al lenguaje C

2 de marzo de 2016

33 / 34

C*: C con algunas cosas de C++

En resumen, C* es C pero con las siguientes cosas de C++:


new y delete
Comentarios en lnea
Declaracin de tipos como en C++ para registros y enumerados
Pasaje por referencia
bool

Programacin 2

Introduccin al lenguaje C

2 de marzo de 2016

33 / 34

Ms informacin

Probar en la computadora qu pasa con cierto comportamiento que


tengan duda

Programacin 2

Introduccin al lenguaje C

2 de marzo de 2016

34 / 34

Ms informacin

Probar en la computadora qu pasa con cierto comportamiento que


tengan duda

Buscar en Internet (recuerden las cosas que s usamos de C++)

Programacin 2

Introduccin al lenguaje C

2 de marzo de 2016

34 / 34

Ms informacin

Probar en la computadora qu pasa con cierto comportamiento que


tengan duda

Buscar en Internet (recuerden las cosas que s usamos de C++)

Consultar bibliografa del curso (ver en EVA)

Programacin 2

Introduccin al lenguaje C

2 de marzo de 2016

34 / 34

Ms informacin

Probar en la computadora qu pasa con cierto comportamiento que


tengan duda

Buscar en Internet (recuerden las cosas que s usamos de C++)

Consultar bibliografa del curso (ver en EVA)

Consultar en EVA

Programacin 2

Introduccin al lenguaje C

2 de marzo de 2016

34 / 34

S-ar putea să vă placă și