Esse modificador é padrão para os tipos char e int. Seu objetivo é fazer com que um tipo de
dado tenha sua representação numérica com sinalização positiva/negativa. Essa sinalização é
feita com a utilização do bit mais significativo com sinal.
Tab. 1: Exemplo de sinalização
bit 7 |
bit 6 |
bit 5 |
bit 4 |
bit 3 |
bit 2 |
bit 1 |
bit 0 |
- |
- |
- |
- |
- |
- |
- |
- |
Quando um modificador de sinalização é utilizado, internamente, caso o valor no bit 7 seja 0,
o número em questão é positivo, caso contrário, o número é negativo.
Sintaxe
signed tipo_numerico nome_variavel;
Onde
tipo_numerico: tipo int e char
Exemplo 1
#include <iostream>
using namespace std;
int main() {
signed int a = 100;
signed char b = 'A';
cout << a;
return 0;
}
A faixa de valores suportados na variável declarada no exemplo acima é de -128 até 127.
Essa faixa de valores já mencionada ao ser discutido sobre o tipo char.
O modificador signed é utilizado por padrão não sendo necessário a sua informação no
momento da declaração de variáveis.
Exemplo 2
#include <iostream>
using namespace std;
void main(void)
{
signed int a = 100;
signed char b = 'A';
cout << a;
}