2 qq 33286911 qq_33286911 于 2016.02.03 13:59 提问

c语言: 变量类型转换的问题 在线等~

图片说明

题目内容:operate函数的返回类型是char,在函数里面计算结果类型是float,

(1)怎么将float转换成char 返回?

(2)求大神帮我看看char型形参opnd1,opnd2 转换成float型p1,p2对不对??

1个回答

lrgdongnan
lrgdongnan   2016.02.03 14:09
已采纳

float应该转换成字符数组返回,转换过程需要自己写,比如说将某位上的数转换为char:
int x=6;
char ch=x+'0';
就可以将6转换为'6'。

Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!
其他相关推荐
42 C语言数据类型转换
C语言数据类型转换
C语言中类型转换时的数据丢失问题
当把较长的整数转化为较短的整数或是char类型时,超出的高位部分将被丢弃。 程序一: #include int main() { int i; char c; i=65535; c=48; i=c; c=i; printf("char=%c\n",c);
C语言中数据类型的自动类型转换
非常的重要的声明: 这篇博客的内容,主要参考网友的博客。 尊重知识产权,尊重原创!一、 C在以下四种情况下会进行隐式转换: 算术运算式中,低类型能够转换为高类型。 赋值表达式中,右边表达式的值自动隐式转换为左边变量的类型,并赋值给他。 函数调用中参数传递时,系统隐式地将实参转换为形参的类型后,赋给形参。 函数有返回值时,系统将隐式地将返回表达式类型转换为返回值类型,赋值给调用函数。 二、 运算表
c语言中数据类型的自动转换原则
由低级向高级转换的原则 最近几天参加一公司招聘,其中有一道笔试题是这样的: 如下程序的输出结果是? #include int main() { unsigned int a=6; int b=-20; (a+b>6)?printf(">6"):printf("<=6"); system("pause"); return 0; } 正确答案是: 至于原因就是上面所将的规
C语言中变量的复杂声明和定义
我们知道:任何C语言变量的声明都由两部分组成:类型以及一组类似表达式的声明符。一旦我们知道如何声明一个给定类型的变量,那么该类型的类型转换符就很容易得到:只需要把声明中的变量名和末尾的分号去掉,再将剩余的部分用一个括号整个“封装”起来即可。例如:float (*h)();表示h是一个指向返回值为浮点类型的函数的指针,所以(float (*)())一个“指向返回值为浮点类型的函数的指针”的类型转
C语言算术运算中数据类型的自动转换
-
c语言算术运算表达式与赋值运算表达式的类型转换规则
一.算术表达式的类型转换规则 1.对于单精度实型操作数,系统先将表达式中所有单精度实型(float型)操作数(常量或变量)转换为双精度实型,在参与运算。 2.对于字符型操作数,系统先将表达式中所有的字符型操作数(常量或变量)转换成整形,并以其ASCII代码只参与运算。 3.当操作数的类型相同时,其结果类型不变。当操作数的类型不同时,一般情况下,其结果类型与操作数中字节数多的类型一致。 4.
运算符,常量和变量,强制类型转换
一,运算符 一定注意=是赋值,==才是等于!!太容易搞混了。 表达式1?表达式2:表达式3 意思是1若为真,则执行2,否则执行3 二,常量和变量 常量:程序运行过程中,值不能改变的量 符号常量:#define 变量:程序运行过程中,值能改变的量 const和define的区分: 1.从定义常量说的话: const 定义的常数是变量 ,带类型, #define 定义的只是个常数 不
深入理解C语言类型转换
C语言类型转换分为两种: 显式强制类型转换 隐式自动类型转换 也许有人遇到过一个负数经过类型转换后可能变成一个很大的整数之类,却不知道实质上是因为什么。希望下面的解释能够解决这个疑惑。下面从详细介绍一个显式类型转换开始。要想深入理解类型转换,首先要有机器数(原码、补码和反码)的相关基本了解。我们都知道在计算机中信息都以二进制用0和1来表示信息。为了运算方便,大多采用补码形式存储数据。比如一个C语言的
C语言陷阱---数据溢出和类型转换
引言 当我们进行各种数学计算(四则运算,指数运算等)时,要时刻保持警惕,防止运算结果的溢出(上溢或下溢);当进行不同类型的数据混合运算时,要注意数据类型的提升或转换,避免精度丢失。 无符号整型在循环条件中造成死循环 示范代码 #include int main() { //unsigned int i = 10; size_t i = 10; while(i >= 0)