变量定义



int var_int = 111111111;
char var_char = '2';
double var_double = 3.30;
float var_float = 4.80;
short int var_short = 5;
long int var_long = 6111111111111111;

数字间的类型转换



总结:占字节数多的类型转换成占字节数少的类型时,会根据在占字节少的类型的内存区的01排列来决定值。

int 和 short的转换


(int)var_short//short->int
(short)var_int//int->short 如果int过大,short会根据自己所占位置的01情况成为相应的数值

int 和 long的转换


(int)var_long//long->int 如果long过大,int会根据自己所占位置的01情况成为相应的数值
(long)var_int//int->long

short 和 long的转换


(long)var_short//short->int
(short)var_long//long->short 如果long过大,short会根据自己所占位置的01情况成为相应的数值

int 和 float的转换


(int)var_float//float->int向下取整
(float)var_int//int->float

int 和 double的转换


(int)var_double//double->int向下取整
(double)var_int//int->double

double 和 short的转换


(short)var_double//double->short向下取整
(double)var_short//short->double

float 和 short的转换


(short)var_float//float->short向下取整
(float)var_short//short->float

double 和 long的转换


(long)var_double//double->long向下取整
(double)var_long//long->double

float 和 long的转换


(long)var_float//float->long向下取整
(float)var_long//long->float

数字与字符、字符串的转化



这是一组函数,在头文件<stdlib.h>中

字符串转数字


atoi();//把字符串转化为整形。
atol();//把字符串转化为长整形。
atof();//把字符串转化为双精度浮点型。
strtod();//将字符串转换为双精度浮点型值,并报告不能被转换的所有剩余数字。
strtol();//将字符串转换为长整值,并报告不能被转换的所有剩余数字。
strtoul();//将字符串转换为无符号长整型值,并报告不能被转换的所有剩余数字。

数字转字符串


itoa();//将整型值转换为字符串。
ltoa();//将长整型值转换为字符串。
ultoa();//将无符号长整型值转换为字符串。
gcvt();//将浮点型数转换为字符串,取四舍五入。
ecvt();//将双精度浮点型值转换为字符串,转换结果中不包含十进制小数点。
fcvt();//指定位数为转换精度,其余同ecvt()。

指针的转换



指针强制类型转化


TYPE1* point1;
TYPE2* point2;
point1 = (TYPE1*)point2;

举例


void *buffer;
char *p_addr = (char *)buffer;

或者

//内存分配相似时的指针类型变化
struct sockaddr_in server;
memset(&server, 0, sizeof(server));
server.sin_family = AF_INET;
server.sin_port = htons(4444);
server.sin_addr.s_addr = inet_addr("192.168.0.101");
int result = connect(sockfd, (struct sockaddr*)&server, sizeof(struct sockaddr));//调用时转化了

C语言程序设计--类型转换的更多相关文章

  1. 《C语言程序设计(第四版)》阅读心得(一)

    本篇开始写我个人觉得谭浩强老师的<C语言程序设计(第四版)>中之前没有认识到,或者忘了的知识.因为本科学过,所以有些简单的东西就没有放进来了,所以可能并不是太全面. 第一章程序设计与语言 ...

  2. 《C语言程序设计教程》学习笔记

    <C语言程序设计教程>--朱鸣华.刘旭麟等 第一章 C语言概述 1.C语言的特点: 1)兼具高级.低级语言的双重能力(C语言允许直接访问物理地址,能够进行位操作,能实现汇编语言的大部分功能 ...

  3. 李志杰的C语言程序设计第一次作业

    这个作业属于C语言程序设计课程 : https://edu.cnblogs.com/campus/zswxy/CST2020-2 这个作业要求在哪里: https://edu.cnblogs.com/ ...

  4. C语言程序设计入门学习五步曲(转发)

    笔者在从事教学的过程中,听到同学抱怨最多的一句话是:老师,上课我也能听懂,书上的例题也能看明白,可是到自己动手做编程时,却不知道如何下手.发生这种现象的原因有三个: 一.所谓的看懂听明白,只是很肤浅的 ...

  5. 160809208沈昊辰c语言程序设计实验选择结构设计

    <C语言程序设计>实验报告 学 号 160809208 姓 名 沈昊辰 专业.班 计科16-2班 学    期 2016-2017 第1学期 指导教师 黄俊莲 吴喆 实验地点 C区二层机房 ...

  6. C语言程序设计第4堂作业

    大家注意:本次作业稍有增加,由于放假期间大家空闲时间比较充足,将之前学习过程中遗留的问题必须在假期解决.   本次课学习主要内容: 分支结构中的二分支结构.多分支结构和else-if语句 掌握字符型数 ...

  7. 《VB语言程序设计(第3版)》总结

    我之前因学习昆仑通态的组态软件MCGS,用并学习过VB,还买了一本书<VB语言程序设计(第3版)>.现在在某公司实习,最近接触老的项目,又要用到VB.我就又把那本书大体看了一遍,并对其进行 ...

  8. 160809209_李梦鑫_C语言程序设计实验3 循环结构程序设计

    <C语言程序设计>实验报告 学 号 160809209 姓 名 李梦鑫 专业.班 计科16-2班 学    期 2016-2017 第1学期 指导教师 黄俊莲 吉吉老师 实验地点 C05 ...

  9. 160809209_李梦鑫_C语言程序设计实验2+选择结构程序设计_进阶

    <C语言程序设计>实验报告 学 号 160809209 姓 名 李梦鑫 专业.班 计科16-2班 学    期 2016-2017 第1学期 指导教师 黄俊莲 吴喆 实验地点 C05 机 ...

随机推荐

  1. find命令/文件名后缀

    2.23/2.24/2.25 find命令 2.26 文件名后缀 find 搜索文件的命令: which   它是从环境变量中找: [root@centos_1 ~]# which ls alias ...

  2. CentOS 经常使用系统命令

    # uname -a # 查看内核/操作系统/CPU信息# head -n 1 /etc/issue   # 查看操作系统版本号# cat /proc/cpuinfo      # 查看CPU信息# ...

  3. 【WP8】ResourceDictionary

    WP8中引用资源字典 当我们定义的样式太多的时候,我们可以把样式分别定义在不同的文件中,然后通过 MergedDictionaries 应用到其他资源字典中,看下面Demo 我们可以把样式定义在多个文 ...

  4. Maven 与 IntelliJ IDEA 的完美结合

    你是否正在学习Maven?是否因为Maven难用而又不得不用而苦恼?是否对Eclipse于Maven的冲突而困惑? 那么我告诉你一个更直接更简单的解决方案: IntelliJ IDEA! 1. 什么是 ...

  5. 11gR2 RAC:更换OCR、votedisk

    要点: ocrconfig 备份-恢复 ocrconfig 导出-导入 crsctl querry css votedisk crsctl replace votedisk {+dsikgroup|s ...

  6. mysql add foreign key 不成功

    今天修改了mysql数据表的结构,然后添加外键index一直不成功: 查到问题在于,被外键的表,引擎不是Innodb,而是MyISAM. 修改好,以后保存报错: 解决办法,将数据库表里的数据全部删除, ...

  7. Ckeditor的JS的加载和取值和赋值方法

    Ckeditor 就是原来的Fckeditor. JS加载: $(function() { CKEDITOR.replace('FContent'); //FContent:这个对应文本域 }); J ...

  8. AcceptEx 以及 获取远程IP与port

    // 獲取本地以及遠程的IP和port setsockopt(clientfd, SOL_SOCKET, SO_UPDATE_ACCEPT_CONTEXT, (char *)&listenfd ...

  9. Linux 查看目录大小及文件数量命令

    查看当前目录大小: [root@21andy.com]# du -sh 查看指定目录大小: [root@21andy.com]# du -sh /www/21andy.com 查看当前目录文件总数: ...

  10. 解决“Connection to https://dl-ssl.google.com refused”问题

    相信一些人刚开始搞android的安装开发环境的时候会遇到:Failed to fectch URl https://dl-ssl.google.com/android/repository/addo ...