/* Testes basicos com caracteres */ #include int main(void) { char a='a', b=66, c='3',d0, d1,e; /* alguns inicializados, outros nao */ int n=66, m; /* inteiro 66 ou o caractere 'b'? */ d0=90; /* atribuição como inteiro: 90 eh tipo int !*/ d1=(char)90; /* com o cast para char */ e='y'; /* atribuição como caractere */ /* Verificando */ printf("O caractere correspondente a %-3d eh '%c'\n",a,a); printf("O caractere correspondente a %-3d eh '%c'\n",b,b); printf("O caractere correspondente a %-3d eh '%c'\n",c,c); printf("\nO caractere correspondente a %-3d eh '%c'\n",d0,d0); printf("O caractere correspondente a %-3d eh '%c'\n",d1,d1); printf("O caractere correspondente a %-3d eh '%c'\n",e,e); printf("O caractere correspondente a %-3d eh '%c'\n",n,n); printf("------------\n"); /* Operações artiméticas com chars? */ n=n+1; b=b-1; c=2*c; printf("O caractere correspondente a %-3d eh '%c'\n",n,n); printf("O caractere correspondente a %-3d eh '%c'\n",b,b); printf("O caractere correspondente a %-3d eh '%c'\n",c,c); printf("------------\n"); /* Outras operações: m e n sao do tipo int e nao do tipo char */ n='f'-'B'; m=(int)'f' - (int)'B'; printf("O caractere correspondente a 'f'-'B' eh '%c', com valor = %1d\n",n,n); printf("O caractere correspondente a (int)'f'-(int)'B' eh '%c', com valor = %1d\n",m,m); printf("------------\n"); printf("Cada caractere ocupa %1d byte\n",sizeof(char)); system("PAUSE"); return 0; }