C语言整型声明方式及说明符:
- 说明符:包含了一些关键字,用于描述被声明的标识符的基本类型。如:signed long int等。
- signed关键字一般只用于char类型,因为其他类型在缺省的情况下都是有符号数,signed将这个范围扩至-127~127。而char的默认范围因编译器而异。所以char可能等于signed char(在vs和gcc中默认为signed char),也可能等于unsigned char。
- 在声明整形变量时,如果声明中已经至少有了一个其他的说明符,关键字int可以省略。例如:signed、unsigned、short、long等。
在以下代码中,验证了:char在vs和gcc中默认为signed char;同时也得出,如果将char赋值为1000,那么输出的结果为-24。计算的方式为1000-256-256-256 = 232,而255的值为-1,所以232为-24。
#define _CRT_SECURE_NO_WARNINGS
#include<stdio.h>
#include<stdlib.h>
#include<memory.h>
int main(int argc, char *argv[])
{
char a = 1000;
printf("%d\n", a);//-24
char b = 255;
printf("%d\n", b);//-1
system("pause");
return 0;
}