c语言 请问char数组该如何声明?

Python013

c语言 请问char数组该如何声明?,第1张

char数组的声明就是直接定义一个char类型的数组。

声明一个char型数组:

char a[N] // a为char型数组名,N为数组大小

值得注意的是:声明必须要在调用之前,对于C语言,必须将定义的语句放在执行功能语句之前。

char a[]如果从定义看就是存储着char类型的数组,而char* b就是一个char类型的指针。我们把第一个叫做字符数组,第二个叫做字符指针。

用法是字符数组在初始化的时候,是把字符串里面的元素复制到数组里面,包括'\0',而字符指针则是指向一个常量,所以,不能用b[1] = 'c'这种方式修改b这个字符串,常量是不能更改的,不过可以让它指向别的字符地址。

扩展资料

关于char占几个字节的问题

1、“字节”byte,“位”是bit ;

2、1 byte = 8 bit ;

char 在Java中是2个字节。Java采用unicode,2个字节(16位)来表示一个字符。

char类型赋值

char a = 'a'//任意单个字符,加单引号。

char a = '中'//任意单个中文字,加单引号。

char a = 111//整数。0~65535。十进制、八进制、十六进制均可。输出字符编码表中对应的字符。

注:char只能放单个字符。

char运算

char类型却是可以运算的因为char在ASCII等字符编码表中有对应的数值。

在Java中,对char类型字符运行时,直接当做ASCII表对应的整数来对待。

char数组其实就是指字符串。

数据如何提取要看你要提取什么数据。

如果是单个字符:

直接用数组的索引方式s[n]就可以提取第n+1个字符。

如果是整个或者局部字符串:

可以使用strcpy或strncpy函数来复制整个或者局部字符串。函数在string.h库当中。

如果是数值类型或者其他类型:

可以使用sscanf格式输入函数,从指定字符串按照格式读取任意类型的数据。函数sscanf在stdio.h库当中。