pragma mark 类型说明符
pragma mark 概念
pragma mark 代码
#include <stdio.h>
char lowerCase(char temp);
int main()
{
#pragma mark 要求用户从键盘输入一个字母,如果用户输入的是大写那么就转换为小写
printf("请输入一个字母\n");
char charValue;
scanf("%c",&charValue);
// 转换
// charValue = charValue + 32; // 65 + 32 = 97
// printf("%c\n",charValue);
printf("%c\n",lowerCase(charValue));
return 0;
}
char lowerCase(char temp)
{
// 1.判断是否是大写字母
// if (temp >= 'A' && temp <= 'Z')
// 注意:开发千万不要这么写,魔鬼数字
if (temp >= 65 && temp <= 90)
{
// temp = temp + 32;
temp = temp + ('a' - 'A');
}
return temp;
}
#pragma mark 类型说明符
pragma mark 概念
/**
类型说明符:
1.说明长度的(它可以用于修改类型所占用的存储空间的大小)
short; == short int == 2个字节 == %i / %d
long; == long int == 8个字节 == %li / %ld
long long; == long long int == 8字节 == %lli / %lld
用于说明数据类型,一般情况下和int配合使用
2.说明符号位(它可以用于修改符号位)
unsigned; (无符号, 只能取正数/0)
signed; (有符号, 只能取正数/0) (有符号,默认就是有符号,取值 正数和0以及负数)
3.不同类型的书名符号可以混合使用
unsigned short
signed long
*/
pragma mark 代码
include <stdio.h>
int main()
{
pragma mark long
/*
// int == 4字节 == -2(31)~2(31)-1
int number = 123456778901;
printf("number = %i\n",number);
// int == 4字节, long int == 8 个字节 == -2(63)~2(63)-1
long int number1 = 123456778901;
printf("number1 = %li\n",number1);
// long int == long
// 用%li 或者 %ld来输出long类型的数据
// C语言中不看怎么存,只看怎么取
long number2 = 123456778901;
printf("number2 = %li\n",number2);
// long long
// 在64位下,基本没什么区别,但是如果在32为就有区别
// 32为下long 占用4个字节,long long 占8个字节
long long int number3 = 123456778901;
printf("number3 = %li\n",number3);
// 修改Xcode的位数 在项目中 Architecures 修改 (默认为64位)
// 32位 $(ARCHS_STANDARD_32_BIT) \
64 位 $(ARCHS_STANDARD)
// 注意:如果使用 long long修饰变量,那么输出的时候需要使用%lli或者%lld
printf("long long = %lli ,long = %lli\n",sizeof(number3),sizeof(number2));
// long long int == long long
long long number4 = 123456778901;
printf("long long = %lli\n",sizeof(number4));
*/
pragma mark short
/*
// int == 4个字节 == -2(31)~2(31)-1
int number = 9; // 0000 1001
printf("%i\n",number);
// 如果以后需要保持的数据的取值范围没有超过short int的取值范围,可以使用short int来保存
// 宝石在企业开发中很少使用
// short int == 2个字节 == -2(15)~2(15)-1
short int number1 = 9; // 0000 1001
printf("%i\n",number1);
// short int == short
// 如果要输出 short int 类型的数据,可以使用 %hi 或者 %hd
short number2 = 9;
printf("number2 = %i",number2);
printf("short = %i,int = %i\n",sizeof(number1),sizeof(number));
*/
pragma mark 符号位
/*
// 如果给变量加上修饰符signed, 代表当前变量的取值可以是 正数 / 负数 / 零
// 如果给变量加上修饰符signed, 就代表把二进制的最高位作为符号位
// 而且默认情况下所有变量都是 (signed) 默认情况下 是signed
int number = 9; // 正数 / 负数 / 零 int == -2(31)~2(31)-1
printf("number = %i\n",number);
// unsigned 代表无符号,无符号就代表当前变量的取值只能是 正数 / 零
// 如果给变量加上修饰符signed,就代表不"把"二进制的最高位作为符号位
// 如果想打印无符号的变量, 只能用%u
unsigned int number1 = -12;
printf("number1 = %u\n",number1);
*/
// 不同类型的说明符号可以混合使用
unsigned long int number = 99;
printf("number = %u\n",number);
signed short int number1 = -23;
printf("number1 = %u\n",number1);
// 注意:相同类型的说明符不能同时在一起使用
// short long int num2 = 998;
signed short int number2 = 22;
printf("short = %u\n",number2);
return 0;
}