本文目錄一覽:
- 1、C語言里怎麼在數組裡定義漢字變量 和指針指向漢字數組?
- 2、C語言字符指針怎麼輸入?謝謝
- 3、C語言無法用指針保存中文字符串嗎?
- 4、C語言里怎麼在數組裡定義漢字變量 和指針指向漢字數組?
- 5、c語言,請大神賜教,漢字字符串數組賦值指針數組後的如何輸出單個漢字?
C語言里怎麼在數組裡定義漢字變量 和指針指向漢字數組?
可以用unicode;
Unicode是一種所有的字符都使用兩個位元組編碼的編碼模式。Unicode字符有時也被稱作寬字符,因為它比單子節字符寬(使用了更多的存儲空間)。注意,Unicode不能被看作MBCS。MBCS的獨特之處在於它的字符使用不同長度的位元組編碼。Unicode
字符串使用兩個位元組表示的0作為它的結束標誌。
#include
string.h
wchar_t
*table
=
{L”成功”};
wchar_t
tc;
tc
=
table[0];
C語言字符指針怎麼輸入?謝謝
例:
#include”stdio.h”
#include”stdlib.h”
main()
{
char*p[10],*temp;
inti,j,k;
for(i=0;i10;i++)
{
p[i]=(char*)malloc(sizeof(char)*50);//開闢內存
}
for(i=0;i10;i++)
{
printf(“輸入第%d本書的書名\n”,i+1);
gets(p[i]);
}
for(i=0;i10;i++)
{
printf(“%s\n”,p[i]);
}
}
擴展資料
C語言字符數組和字符串的使用
用來存放字符的數組稱為字符數組,例如:
char c[10];
字符數組也可以是二維或多維數組。例如:
char c[5][10];
字符數組也允許在定義時進行初始化,例如:
char c[10]={‘c’, ‘ ‘, ‘p’, ‘r’,’o’, ‘g’, ‘r’, ‘a’,’m’}; // c[9]未賦值,所以為默認值』\0』
當對全體元素賦初值時也可以省去長度說明。例如:
char c[]={‘c’, ‘ ‘, ‘p’, ‘r’, ‘o’, ‘g’, ‘r’, ‘a’, ‘m’ };
這時c數組的長度自動定為9。
字符數組和普通數組一樣,也是通過下標引用各個元素。
C語言無法用指針保存中文字符串嗎?
這不是絕對的:當指針指向的字符串是常字符串時當然不能再賦值,因為目標是「常量」,而當指針指向的字符串不是常字符串時就可以再賦值,比如用動態申請內存方法創建的字符串。具體說就是用char *p=”abcqer12345″;這種方法定義字符串是不能通過指針改變內容的,原因是這個定義確定了abcqer12345是字符串常量——因為char *p=”abcqer12345″;被編譯器解釋為「創建一個字符串常量abcqer12345,並把它的首地址(就是a的地址)賦給char *型指針p」——既然是「常量」,自然就不能更改。
C語言里怎麼在數組裡定義漢字變量 和指針指向漢字數組?
1、在C語言中,可以通過將漢字作為字符串輸入。
由於一個漢字佔2個位元組,所以對漢字的操作,只能以2個位元組作為操作單位。
2、下面通過具體實例來說明漢字在C語言中的使用:
char s[] = “首都北京”; // 將漢字字符賦值給字符數組
char s2[20]; // 定義字符數組,存放用戶輸入的漢字
scanf(“%s”, s2); // 接收用戶輸入的漢字字符
printf(“%d\n”, sizeof(s)); // 計算字符數組s所佔的內存單元,輸出9(最後一個位元組是結束字符’\0’)
printf(“%s\n”, s[2]); // 輸出「都北京」(首字佔2個位元組)
printf(“%s\n”, s2); // 輸出用戶輸入的漢字
c語言,請大神賜教,漢字字符串數組賦值指針數組後的如何輸出單個漢字?
中文就是用兩個位元組表示一個漢字。方法不止一種:
#includestdio.h
#includestring.h
int main()
{
char str[]=”如何控制指針數組”;
int i,j,len=strlen(str);
char words[len/2][3];
for(i=0,j=0;ilen;i+=2,j++)
{
words[j][0]=str[i];
words[j][1]=str[i+1];
words[j][2]=0;
}
printf(“輸出單個漢字,2個字符為一個漢字:\n”);
for(i=0;ilen/2;i++)
printf(“%s\n”,words[i]);
return 0;
}
原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-hk/n/154993.html