c語言存儲漢字
A. c語言中一個字元用%c輸出,那麼一個中文字用什麼輸出呢
首先要明白,在C語言中,漢字的的儲存方式,即一個漢字用兩個位元組儲存,在字元串中,如果要將某一漢字輸出,應該同時輸出和這個漢字有關的字元,採用printf("%c")方式輸出~例如
#include"stdio.h"
void main()
{
char a[]="你好";
printf("%c%c%c%c",a[0],a[1],a[2],a[3]);
}
或採取循環輸出的方式,如果只輸出一個字元,是沒有用的,一般運行的結果是無任何顯示~
希望你對我的回答滿意~
B. C語言中,中文是如何存儲的
C語言中,漢字是用字元串來存儲的,因為,漢字是多位元組組成(GBK字元集一個漢字占兩個位元組,UTF8字元集,一個漢字佔三個位元組),所以,標准C中,只能用字元串來存儲漢字數據。
可以採用字元串輸入函數來輸入中文。
判斷中文是不是指定數據,可以用strcmp()函數來進行比較
中文輸出,可用printf("%s")來輸出相應的數據。
參考代碼:
#include<stdio.h>
#include<string.h>
voidmain()
{
charstr[100];
printf("請輸入中文:");
scanf("%s",str);
if(strcmp(str,"你好")==0)//兩個字元串相等時,strcmp返回0
{
printf("我很好 ");
}
else
{
printf("你輸入的是:%s ",str);
}
}
運行結果:
請輸入中文: 你好
我很好
請輸入中文: 中國
你輸入的是:中國
C. C語言中漢字的用 char 也可以存么
1、C語言中漢字的用char不可以存;
2、char是容納單字元的一種基本數據類型,不能存儲漢字;
3、char用於C或C++中定義字元型變數,只佔一個位元組,取值范圍為 -128 ~ +127。
(3)c語言存儲漢字擴展閱讀:
C語言介紹:
C語言是一門面向過程、抽象化的通用程序設計語言,廣泛應用於底層開發。C語言能以簡易的方式編譯、處理低級存儲器。C語言是僅產生少量的機器語言以及不需要任何運行環境支持便能運行的高效率程序設計語言。
C語言是一門面向過程的計算機編程語言,與C++、Java等面向對象編程語言有所不同。C語言的設計目標是提供一種能以簡易的方式編譯、處理低級存儲器、僅產生少量的機器碼以及不需要任何運行環境支持便能運行的編程語言。
參考資料來源:網路-char
D. c語言中文字如何存儲
可以用文件操作函數寫入文件內儲存。
1、C語言標准庫提供了一系列文件操作函數。文件操作函數一般以f+單詞的形式來命名(f是file的簡寫),其聲明位於stdio.h頭文件當中。例如:fopen、fclose函數用於文件打開與關閉;fscanf、fgets函數用於文件讀取;fprintf、fputs函數用於文件寫入;ftell、fseek函數用於文件操作位置的獲取與設置。
2、常式:
#include<stdio.h>
inta;
charb,c[100];
intmain(){
FILE*fp1=fopen("input.txt","r");//打開輸入文件
FILE*fp2=fopen("output.txt","w");//打開輸出文件
if(fp1==NULL||fp2==NULL){//若打開文件失敗則退出
puts("不能打開文件!");
return0;
}
fscanf(fp1,"%d",&a);//從輸入文件讀取一個整數
b=fgetc(fp1);//從輸入文件讀取一個字元
fgets(c,100,fp1);//從輸入文件讀取一行字元串
printf("%ld",ftell(fp1));//輸出fp1指針當前位置相對於文件首的偏移位元組數
fputs(c,fp2);//向輸出文件寫入一行字元串
fputc(b,fp2);//向輸出文件寫入一個字元
fprintf(fp2,"%d",a);//向輸出文件寫入一個整數
fclose(fp1);//關閉輸入文件
fclose(fp2);//關閉輸出文件,相當於保存
return0;
}
E. C語言如何存儲漢字字元,比如我想存儲一個漢字字元串,應該怎麼辦。
不知道你是想用純C的來實現,還是可以借用windows的庫。
如果借用windows的庫就比較簡單了,直接用wchar處理unicode編碼就可以支持中文。
用純c自己進行處理,就採用DBCS編碼方式,支持雙位元組漢字處理。