Ao escribir programas utilizando a linguaxe C como noutras linguaxes, os datos deben definirse. Sendo constantes ou variables, deberase indicar o tipo correspondente para que o compilador asigne á memo a parte e secuencia de bits adecuada.
C coñece os seguintes datos básicos: caracteres, números enteiros, números reais e números reais de dobre precisión. (Na táboa 1 pódense ver as características de cada tipo).
Pódense definir números enteiros con diferentes características en función do uso do signo e do número de bits. Desta forma, os números sen signos, os números curtos ou os longos pódense escribir tendo en conta as características analizadas na táboa 2.
A diferenza entre os tipos reais radica na precisión, mentres que os float teñen 7 cifras decimais, os doubles, teñen una precisión de 15 cifras.
Tamén se poden utilizar outros tipos, pero sempre tomando como base os tipos mencionados. Así, as cadeas de caracteres serán táboas de caracteres, enteiros ou caracteres que só utilizan dous valores booleanos, etc.
As constantes non deben ser feitas antes de usalas, xa que segundo a súa escritura inventa o tipo compilador que lles corresponde. Na táboa 3 pódense ver algúns exemplos nos que se pode observar que o decimal é a característica dos reais, o dos caracteres ‘, o das cadeas de caracteres “, o sufijo L, o dos caracteres long. Na expresión das constantes tamén se utilizan prefixos paira determinar a escritura do valor que queremos memorizar. O prefixo Ø, por exemplo, indica que o valor está formado por díxitos oculares, o prefixo Øx con díxitos hexadecimales e E k con mantis e expoñente entre os dous números
...Existen outras constantes (utilizadas principalmente paira escribir resultados) paira indicar caracteres especiais. Por exemplo ,\n é un carácter de fin de liña,\t de tabulación,\b backspace e\Ø é o último da cadea de caracteres.
Una vez vista a escritura das constantes, queremos lembrar un criterio que aconsella a programación estruturada, o uso de constantes parametrizadas. En lugar de utilizar as constantes directamente segundo este criterio (dando un nome inicial ás constantes), utilizarase este nome en todas as utilidades. Desta maneira, o programa gañará en legibilidad e só se modificará na inscrición se se cambia de valor. Nos programas C de inscripci??n a constantes utilízase o pseudo-orde #define ao comezo dos programas, co nome das constantes en maiúsculas (ver táboa 4).
# define PI 3.14159
main ( ){
float r, área, perímetro; printf (“pulse o tamaño
do radio\n”);
scanf (“%f”, r); /* Æcon referencia*/ perímetro
= 2 * PI * r;
superficie = PI * r * r;
printf (“superficie: %f\n”;
superficie; printf (“perímetro: %f\n”, perímetro);
Como se pode observar no programa na táboa 4, todas as variables deben ser desprezadas antes de ser utilizadas, utilizando as palabras crave vistas na táboa 2 determinarase previamente o tipo correspondente. Deste xeito, o compilador saberá cantos bits deberá gardar á variable no programa executable.
Ao introducir as variables pódese asignar un valor inicial, de non ser así o compilador asignaralles o valor Ø. Paira levar a cabo esta inicialización na sentenza de emisión anotará tras o nome do variable = carácter e o valor que se desexa establecer. Por exemplo, ao inicializar una variable tipo carácter, a asignación do valor a farase coa seguinte sentenza:
char = ‘a’
A diferenza de linguaxes como o pascal, nos programas de C os operandos non deben ser compatibles en canto ao tipo.
Si nas asignacións e/ou nas operacións os operandos son de distinto tipo, prodúcese una conversión de datos implícita, sendo o tipo de variables intermedias o máis longo e complexo de entre os participantes de acordo coa seguinte clasificación:
char \{\{\{\{\{\{\\{\\{\{\\\\\\\\\\\\\\\\\\\\double
Por iso, paira converter un carácter en maiúscula (supondo que está en minúscula) pódese facer a través do programa da Táboa 5.
main ( ){‰Como se ve no programa, prodúcese a suma e resta de caracteres, pero o que realmente se executará é converter os caracteres en números enteiros, a suma e resta dos enteiros e finalmente converter o resultado en caracteres.
No entanto, é conveniente explicitar as conversiones paira evitar erros e gañar en legibilidad, xa que si nalgúns compiladores C non se fai explicitamente xéranse mensaxes de aviso.
Paira expresar a conversión explícita utilízase o elemento denominado cast (título) que define entre paréntese a palabra crave do tipo de dato. Por exemplo, paira converter un carácter nun número enteiro (int) porase diante da referencia do variable carácter.