c语言的数据类型

<10> 分析 C 语言程序的框架
每个 c 语言程序都有个执行的入口,称之为主函数( main
问题: c 语言程序是否可以没有主函数?是否可以有多个主函数?
printf (打印函数) 的意思是将内容打印在控制台
printf 是一个库函数( C 语言本身提供的函数),需要引入头文件 : #include <stdio.h>
用双引号引起的一段内容,称之为字符串。
return 0 代表返回 0
数据类型
说明
char
字符型
short
短整型
int
整型
long
长整型
long long
更长的整型
float
单精度浮点型
double
双精度浮点型
3 )数据类型 数据类型
说明
void
无类型
案例:
结果:
小插曲:转换说明符
Tips: 在输入时同样参考上面的转换说明符。
int main () {
char ch = 'a' ;
printf ( "%c\n" , ch ); // 打印字符格式的数据
int age = 20 ;
printf ( "%d\n" , age ); // 打印整型十进制数据
float height = 1.73 ;
printf ( "%f\n" , height );
double pi = 3.14 ;
printf ( "%lf\n" , pi );
return 0 ;
}
// char ch=‘a’; 表示在内存中申请一块空间,用来存储字符 a, 空间的名称叫 ch. 其它的类似
% d 打印十进制数据
% x 打印 16 进制数据 0XAA aa
% o 打印 8 进制数据 printf ( "%o" , 012 ); // 12
% #o 原样打印 8 进制数据 printf ( "%#o" , 012 ); // 012
% c 打印字符格式数据
% f 打印浮点型数字
% u 打印无符号十进制数据 0XAA 170 , printf ( "%u" , 012 ); //10
% p 以地址的形式打印数据
% X 打印 16 进制数据 ( 大写形式 ) 0XAA AA
% #X 原样打印 16 进制数据 0XAA 0XAA
% e 以指数形式打印数据
% ld 打印 long 格式的数据
% lf 打印 double 类型数据
案例
int main () {
double a ; // 双精度浮点数,应该使用 %lf 转换说明符
scanf ( "%f" , & a ); // 此处代码错误
printf ( "%f" , a ); // 此处代码错误
return 0 ;
}
注意:    //数据类型 变量名=表达式
    char c = 'a';//声明一个字符变量,保存字符a 字符用单引号''表示
    short age = 18;//声明一个短整型变量 保存年龄
    float weight = 72.4f;//声明一个浮点型变量 保存体重
    long long  gdp = 156454564546545;//声明一个长整型变量 保存gdp
    int isEmply = 0;//真 true(非0)假false(0) 小驼峰式命名 前边小写后边大写
    char teacherName[] = "wulaoshi";//字符串表示双引号引起来""
测试:
每种类型的大小是多少?
通过 sizeof 进行检测。
#include <stdio.h>
int main () {
printf ( "%zd\n" , sizeof ( char ));
printf ( "%zd\n" , sizeof ( short ));
printf ( "%zd\n" , sizeof ( int ));
printf ( "%zd\n" , sizeof ( long ));
printf ( "%zd\n" , sizeof ( float ));
printf ( "%zd\n" , sizeof ( double ));
printf ( "%zd\n" , sizeof ( long long ));
return 0 ;
}
类型
X86 X64
char
1 1
short
2 2
int
4 4
unsigned int
4 4
long
4 4
long long
8 8
unsigned long
4 4
float
4 4
double
8 8
char*
4 8
int*
4 8
C 语言规定: short int 型至少为 16 位, long 型至少为 32 位,并且 short 型长度不能超过 int 型,而 int 型不
能超过 long 型。这就是在说各个类型的变量长度是由编译器来决定的
常量与变量:
定义变量的方式:
// 定义一个整型变量 age
int age = 20 ;
// 定义一个单精度浮点型变量 weight
float weight = 57.4f ;
// 定义一个字符型变量 ch
char ch = 'z' ;
变量的分类:
全局变量和局部变量
注意:全局变量名和局部变量名可以相同,在使用时,局部变量优先。 建议不要相同 , 容易混淆
局部变量只能在所属的代码块中使用 [ {} 包裹起来的区域 ] ,在所属代码块之外不能使用。
变量的使用
// 定义一个整型变量 age
int age = 20 ;
// 定义一个单精度浮点型变量 weight
float weight = 57.4f ;
// 定义一个字符型变量 ch
char ch = 'z' ;
int global = 2023 ; // 全局变量
int main () {
// 定义一个整型变量 age ,局部变量
int age = 20 ;
// 定义一个单精度浮点型变量 weight ,局部变量
float weight = 57.4f ;
// 定义一个字符型变量 ch ,局部变量
char ch = 'z' ;
// 再次定义 global 会不会出问题?
int global = 2024 ;
printf ( "%d" , global );
}
变量的使用:
#include <stdio.h>
int main () {
int num1 = 0 ;
int num2 = 0 ;
int sum = 0 ;
printf ( " 请输入 num1 num2 \n" );
scanf ( "%d %d" , & num1 , & num2 );
sum = num1 + num2 ;
printf ( "%d + %d = %d" , num1 , num2 , sum );
return 0 ;
}
注意:
scanf 叫做输入函数,用来接收控制台输入的数据。
在输入函数中,用来接收输入值的变量前要加 & ,表示取地址。其中 & 符号是取地址符。
在使用 scanf 时会有个错误信息
常量:
C 语言中,常量和变量的定义形式有很大的差异。
C 语言中的常量分为以下 4 种:
<1> 字面常量
<2>const 修饰的常变量
<3>#define 定义的标识符常量
<4> 枚举常量
枚举:将数据一一列举
枚举关键字: enum
5 )字符串、转义符和注释
1. 字符串
“Hello World!”
由双引号引起来的一串字符称为字符串字面值,简称字符串。
#define PI 3.14f
int main () {
return 0 ;
}
enum Gender {
Male , Female
};
// Male Female 就是枚举常量
int main () {
// 枚举常量的使用
printf ( "%d\n" , Male );
printf ( "%d\n" , Female );
return 0 ;
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值