C数据类型:定义变量
C是一种功能强大、灵活、可移植和结构化的高级编程语言。它结合了高级语言的特性和汇编程序的元素。它既适合系统编程,又适合应用编程。它是使用最广泛的通用语言。C语言是用来处理某种由字符、数字和字符串组成的数据的。这个处理数据的任务是通过执行一组称为“程序”的指令来完成的。C有自己的词汇表和语法,它是根据各种数据类型和函数的语法定义的。
数据类型
C语言的数据类型非常丰富。可用的各种数据类型允许程序员根据应用程序或机器的要求选择适当的类型。数据类型是一种广泛的系统,用于声明不同类型的变量和函数。
有三类数据类型:
- 主要(基本)数据类型
- 派生数据类型
- 用户定义的数据类型
主要数据类型
主要数据类型可以分为基本类型和内置类型。这些数据类型是任何编程语言的最基本构建块,许多复合数据类型都是使用它们构造的。
一些主要数据类型是
整数类型:
顾名思义,此数据类型仅用于保存整数值。整数存储值的范围一般为-32768 ~ 32767。有符号整数使用一位表示符号,15位表示数字的大小。整数有三种存储类型:有符号存储和无符号存储。这些是根据它们所持有的价值范围分类的:
- 短整数:-128至127
- Integer:-32768至+32767
- 长整数:-2,147,483,648至2,147,483,647
语法
shorti =价值;int i =值;long int =值;int i = 3;long int i = 340000短i = 2;
浮点类型:
这种数据类型以32位存储实数,精度为6位。关键字' float '定义浮点数据类型。当需要更精确的数据时,使用double类型。当需要更精确的数据时,使用double类型。Double类型使用64位,给出14位的精度。双型精度高于浮子型。Long double将其使用的精度进一步扩展了80位。
void类型:
此数据类型没有值,通常指定函数类型。void类型函数不返回任何值。它还可以扮演泛型类型的角色,这意味着它可以表示任何标准类型。
语法:
public void显示屏()
字符类型:
在C中,单个字符被定义为字符(char)类型数据。它们通常存储在8位存储器中,字符可以是有符号的和无符号的。有符号的字符范围是-128 ~ 127;无符号的字符范围是0 ~ 255。
语法
char ch = ' '
用户定义的数据类型:
C支持功能“typedef”,允许用户定义代表现有数据类型的标识符。然后可以使用此定义的数据类型来声明变量:
语法:
typedef int数据;数字num1, num2;
在这个例子中,num1和num2被声明为int变量。用户定义数据类型的主要优点是提高了程序的可读性。
另一种类型是枚举类型。这也是用户定义的数据类型
语法:
枚举标识符{value1,value2,值3,...}
“枚举”是关键字和“标识符”是用户定义的数据类型,用于声明变量。它可以具有在卷曲括号内括起来的任何值。例如:
enum天{一月,二月,三月,四月,..};enum天month_st month_end;
编译器自动将从0开始的整数赋值给所有枚举常量。例如,“January”将分配值0,“February”将分配值2,以此类推。还可以显式地指定枚举常量。
派生数据类型:
这些数据类型由两个或多个主要数据类型的组合形成。他们延长了C语言的范围。最常见的是指针,阵列,联合和结构。
指针:指针是C语言的非常强大的功能。指针的基本概念是它提供了确定数据地址的机制。它可以引用任何数据类型 - 基本或派生。但是,过度使用指针会影响性能。
语法:
//字符指针
char * char_ptr // Interger Pointer int * int_ptr
阵列:
数组是一种容器,用于在一个变量和数据类型中存储多个值。它是用方括号定义的。括号中有一个整数,它定义了数组的大小。
语法:
常量unsigned int size=49
请注意,数组只能具有unsigned值,因为大小不能为负。
结构:
c允许您声明可以将各种类型的数据项持有的变量。这称为C中的结构。“struct”关键字用于定义结构。它定义了具有多个成员的新数据类型。
语法
struct [结构标签] {成员定义1;会员定义2;...成员定义3;[结构变量];
结构标签是可选的,每个成员定义都是一个普通的变量声明。结构变量在分号之前定义,但这是可选的。
struct图书{char标题[50];char[50]作者;char[100]主题;int book_id;} book1;
声明结构变量的另一种方法是
语法:
书籍书2.
“书籍”是定义的结构的名称,“Book2”是变量名称。
例如:访问结构的成员。
//声明结构结构书籍{char标题[50];char[50]作者;char[100]主题;int book_id;};int main(){struct books book1;/ *声明结构变量* / struct书籍书2;/ *进入结构成员* / book1.title,=“烹饪简单”;Book1.author =“厨师”;Book1.subject =“烹饪”; Book1.id=1234567; }
工会
UNION在相同的内存位置存储不同的数据类型。它由许多成员组成,但只有一个成员可以在任何给定时间包含值。它提供了一种有效的方式,用于各种目的的使用相同的存储器位置。
语法:
//联盟申报联合数据{int k;f1;char str [10];};int main(){Union数据Data1;//访问Union Printf的成员(“数据的内存大小:%d \ n”,sizeof(data1));返回0;}
样本程序
main(){短i = 2;int num1 = 45;长int num2 = 123456789;char ch ='a';char a [] = {'我','a','m','a','r','r','a','y'};int * ptr;ptr =&num1; //设置ptr指向num1 system.out.println(“i a a a a a a a a a a a a a a a a a a a + num1 + num3);system.out.println(“我是字符数据类型”+ ch);system.out.println(“我是派生数据类型”PTR);for(x = 0; x