C語言day06-12類型說明符

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;

}

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容