类型转换
Posted 128-cdy
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了类型转换相关的知识,希望对你有一定的参考价值。
#include<stdio.h> int main() char a = 100; char b = 200; char c = a+b; printf("%d %d\\n",c,a+b); //printf("%d\\n",b); unsigned char x = 100; unsigned char y = 200; unsigned char z = a+b; printf("%d %d\\n",z,x+y); //printf("%d\\n",y); return 0;
运行结果:
由于是char类型其范围是 -128~127,char b = 200;超出其范围,就变成了成了负数-56,所以输出就变成了44,然而第二个是无符号的char类型,其范围是0~255,所以y的值么有超出范围,所以z还是输出44,由于是%d输出,x+y 就被转成了更高级的int型输出,并且x,y 赋值是合法的,也么有超出范围,所以输出就是300.
(个人见解,有待完善)
以上是关于类型转换的主要内容,如果未能解决你的问题,请参考以下文章
HTML Bookmarklet模板:将任何JavaScript代码片段转换为Bookmarklet
结合两个代码片段?将用户输入的 Youtube url 转换为嵌入 url,然后将 iframe src 替换为转换后的 url