⑴ c语言中 可以直接整形数赋给字符型么
实际上在C语言中,两者大部分的时候可以通用。
字符型在电脑中的存储就是其ASCII码
3+‘0’ 在电脑中存储的数值为51,如果你以字符的形式显示出来,他就是
字符‘3’,如果你把他作为一个整数,他就是51
所以,就看你是利用字符还是用作整数计算。
⑵ C语言中 向整型变量赋予字符可以吗
语法上没错,但是现实就又问题了,在字符变量的储存方式是二进制数字,二级制数字储存在物理内存中,在用的时候先调出这个数字,再由系统对应找到那个字符两,但是你现在把字符量给整形变量,又用整形显示,那显示的结果一定是个数字,而不是字符,而且这个数字是ASCII对应的数字,所以,你的运行结果一定是97
⑶ C语言中怎么把Int型转成字符型
要先弄清楚到底是将整型转换成字符还是一个字符串,如果把整型变量转为以该变量作为ascii码的字符,可以直接付值,当然这个数值要小于256,如果是转换成一个字符串,那就如上说讲的用sprintf或者itoa函数来实现吧
⑷ c语言中输入是整型,却想将其当字符型用,怎么办
你好。可以使用强制类型转换,例如:
int i;
char c=(char)i;满意请采纳,
那么C就是i对应的字符了,谢谢。
⑸ c语言 怎么讲一个整形变量的值赋给一个字符型数组中的一个元素
b[0][0]=a+'0';<p>这样就可以了,不过这样只使用于1位数的情况,因为ASCII码表里只有0-9的ASCII码,它们比正常的多‘0’的值,也就是48。
字符数组的初始化,最容易理解的方式就是逐个字符赋给数组中各元素。
char str[10]={ 'I',' ','a','m','
',‘h','a','p','p','y'};
即把10个字符分别赋给str[0]到str[9]10个元素
如果花括号中提供的字符个数大于数组长度,则按语法错误处理;若小于数组长度,则只将这些字符数组中前面那些元素,其余的元素自动定为空字符(即
'\0' )。
⑹ C语言中把整型变量3403赋给字符型变量后为什么输出这个字符型变量为K
十进制3403的十六进制表示为:0d4b
由于i2是int型数据,其在内存中保存数据的顺序是:4b,0d,00,00
字符型变量c2仅保存一个字节内容,因此在执行c2=i4;时,系统仅将i2的最低位字节4b取出来赋值给c2,而大写字母K的编号(ASCII码值)为75,正好用十六进制表示为4b,因此输出的是这个字符。
⑺ c语言中,整型赋予字符型,只把低八位赋予字符量是怎么回事
根据标准,字符型(char)占用一个字节存储(一个字节8位)。
而整型(int)则视不同环境而定。现在常见的是2字节或者4字节。
拿2字节的整型举例,大多数情况下,第一个字节是低八位,第二个字节是高八位,那么问题就来了,将2字节的内容存储至1字节中,必然要舍去部分值。因此只会复制int型变量低八位的值至char型变量中,高八位的值没有地方复制,就舍去了,等同于高八位为0
于是就出现了LZ的问题。
⑻ C语言 整形变量赋值到字符串
其实用c也很简单的,c里有用于处理字符串的头文件string.h
strcat()函数就是将两个字符串连接
不过在c里面是没字符串变量这个概念的,用字符指针来实现
下面是程序
#include"stdio.h"
#include"stdlib.h"
#include"string.h"
main(){
char
*send
=
"whatyouwant";/*用你想要的东西代替whatyouwant稍改一下可以自己输入,自己完成这个功能吧*/
char
*addr;
addr
=
strcat(send,"@163.com");/*将@163.com连接到send的后面*/
printf("%s",addr);
/*打印结果*/
getch();
}
本人亲自编译通过