char(計算機語言關鍵字)

char(計算機語言關鍵字)

本詞條是多義詞,共3個義項
更多義項 ▼ 收起列表 ▲

char用於C或C++中定義字元型變數,只占一個位元組(8位),取值範圍為 -128 ~ +127(-2^7~2^7-1)。C語言中如int、long、short等不指定signed或unsigned時都默認為signed,但char在標準中不指定為signed或unsigned,編譯器可以編譯為帶符號的,也可以編譯為不帶符號的。

基本介紹

  • 中文名:字元
  • 外文名:char
  • 類型:C/C++整型數據之一
  • 定義:可容納單個字元的數據類型
  • 範圍:-128 ~ +127
char數據類型,MYSQL中的char數據類型,Excel中形式char函式,int型和char型變數相互賦值,

char數據類型

(1)定義:char型數據是計算機程式語言中只可容納單個字元的一種基本數據類型。
(2)取值範圍:char : -2^7 ~ 2^7-1 ;
signed char: -2^7 ~ 2^7-1
unsigned char : 0 ~ 2^8-1
而且關於char還有一個特殊的語言就是char *,它在C/C++中有專門的語義,既不同於signed char *,也不同於unsigned char *,專門用於指以'\0'為結束的字元串。
在C++中,下列程式是可以通過編譯的:
char *p="abcd";
但如果用
signed char *p="abcd";
unsigned char *p="abcd";
都是不能通過編譯的。
判斷編譯器的默認char符號方法如下:
#include <stdio.h>int main(){  char c=-1;  if(c<200){  printf("signed\n");  }  else{  printf("unsigned\n");  }  return 0;}/*char 還在pascal語言中套用。在Pascal語言中,字元常量是由單個字元組成,所有字元採用ASCII編碼也稱ASCII碼*/

MYSQL中的char數據類型

在MYSQL中,欄位類型char是指:使用指定長度的固定長度表示的字元串;比如char(8),則資料庫會使用固定的1個位元組(八位)來存儲數據,不足8位的字元串在其後補空字元。

Excel中形式char函式

在excel中char函式用於返回對應發於數字代碼的字元。其用法:=char(number)
其中,參數number為轉換的字元代碼,介於0~255之間,char占一個位元組,也就是8個二進制位,但它表示的是有符號的類型,所以表示的範圍是-128~127;uchar表示無符號的類型,所以表示的範圍是0~255。

int型和char型變數相互賦值

整型和字元型是互通的,他們是在記憶體中存儲的本質是相同的,只是存儲的範圍不同而以,整型可以是2位元組,4位元組,8位元組,而字元型只占1位元組。
例如:
#include<stdio.h>int main(void){    int i = 128;    char ch = i;    printf("%d\n",ch);    return 0;}
char類型占1位元組,就是8位,所能存儲的正整數是 0111 1111,即127。現在將 int 型的整數i= 128 賦予ch,會產生溢出。因128是 int 型,占 4 位元組,二進制代碼為 0000 0000 0000 0000 0000 0000 1000 0000.。若將它賦給一個只有8位的char 類型變數,只能將低8位的1000 0000 放進去,其他的都會被刪掉。整數在計算機中都是以補碼的形式存儲的,此時1000 0000 在計算機的眼裡,是一個補碼,最左邊是 1 表示負數,補碼1000 0000 所對應的十進制是 -128,所以最後輸出的就是 -128。因此溢出會使得最大正整數變成最小負整數。

相關詞條

熱門詞條

聯絡我們