求解决-c语言数据变量赋值类型

问题描述

c语言数据变量赋值类型

假定有一个程序,它把一个long整型变量赋值给一个short整型变量。当你编译程序的时候会发生什么情况?当你运行程序时会发生什么情况?你认为其他编译器的结果是否也是如此?

解决方案

long整型变量赋值给一个short整型 会报错,类型转换出错,long转short大范围转小范围错误

解决方案二:

C语言是一种简陋而充满陷阱的语言,它需要程序员格外小心,而不是依赖完备的运行时检查和编译检查。
其它编译器,如果是C编译器,大多如此。当然现代的C++编译器,比如VC2015,会给出更严格的检查和警告。

解决方案三:

C语言--变量类型
C语言中的变量类型
C语言变量类型

解决方案四:

long型比short长,所以强制转换会数据截断。后面处理就不会是你期望的数据了。

时间: 2024-10-31 00:17:44

求解决-c语言数据变量赋值类型的相关文章

求解决-c语言问题求解,请大神们指教

问题描述 c语言问题求解,请大神们指教 本题要求实现一个对数组进行循环右移的简单函数:一个数组aa中存有nn(>0>0)个整数,将每个整数循环向右移mm(ge 0≥0)个位置,即将aa中的数据由(a_0 a_1 cdots a_{n-1}a ?0 ?? a ?1 ?? ?a ?n?1 ?? )变换为(a_{n-m} cdots a_{n-1} a_0 a_1 cdots a_{n-m-1}a ?n?m ?? ?a ?n?1 ?? a ?0 ?? a ?1 ?? ?a ?n?m?1 ?? )(最

急求解决-用语言编写一个项目在vc2012下

问题描述 用语言编写一个项目在vc2012下 当创建一个项目后,打开cpp文件,会发现里面有很多已经自动有得代码,现在怎样看那些代码,以及怎样用它编一个贪吃蛇的游戏 解决方案 你要用C++写贪吃蛇的话,得先学C++.再看你是写控制台下的程序还是图形界面的程序.控制台的话纯C++就可以实现了:图形界面的话得用MFC或者Qt之类的第三方控件 解决方案二: c#的winform就可以写了,,主要是算法的问题,, 解决方案三: 我用C语言编写,创建后这是我看的视频教程中的代码,他是自动生成的,这些代码要

浅谈const变量赋值报错分析_C 语言

从变量到常量的赋值是合法C++的语法约定的, 如从char 到const char顺畅: 但从char **到 const char **编译器就会报错: 复制代码 代码如下: error: invalid conversion from `char**' to `const char**' 示例: int main(int argc, char *argv[]) { char a = '1'; const char b = a; char * a2 = "12345"; const

《好学的C++程序设计》——2.4 对数据变量怎样保护

2.4 对数据变量怎样保护 好学的C++程序设计 对数据变量进行保护就是对变量值进行保护.就是采取措施,使得在程序运行中变量值不受改变,以保证数据的安全.这在某些场合下是需要的,可以采取如下几方面的措施. 2.4.1 可用const声明常值数据变量 若数据变量的值保持不变,则称之为常值数据变量.常值数据变量的声明形式如下: const 数据类型 变量名=常量值; 或 数据类型 const 变量名=常量值; 声明中,const可以放在开头,也可以放在紧靠变量名左侧.要注意,常值数据变量在声明时一定

c语言-C语言求解决,问题描述和代码如下

问题描述 C语言求解决,问题描述和代码如下 在一个学生成绩管理系统中,保存学生个人的成绩情况,其中包括学号,姓名,性别,5门课成绩.对所有成绩作如下处理: (1)从键盘输入10个学生的学号,姓名,性别,5门课成绩,并计算出每个人平均成绩,全班每门课的平均成绩,将原有数据和计算出的平均分数存放在磁盘文件"stu.c"中. (2)将上题"stu.c"文件中的学生数据,按每个人的平均分进行排序处理,将已排序的学生数据存入一个新文件"stu-sort"中

语言相关-变量类型

语言相关 - 变量类型 所谓变量是指在为了快速读取而在内存中保存数据的一块空间. 您可以把它想象成是一个在内存里的邮箱, 我们可以往里面存信也可以取信.例如您可以创建 一个变量用来保存用户回复的数值或者某个数学表达式的 运算结果. 每个变量都有自己的名字(这跟邮箱是不是很像?)而且必须以英文 字符"$"开头,其中只能包含 字母, 数字 和下划线_字符.  下面是一些有效的变量名:     $var1     $my_variable   每个变量都储存为一个Variant.   变量的

c语言-关于C语言结构体指针类型的强制转换(求大神详细解答)

问题描述 关于C语言结构体指针类型的强制转换(求大神详细解答) #include <iostream> #include <algorithm> using namespace std; typedef struct { string dna; int count; }DNA; DNA dna[101]; **int cmp(const void *a,const void *b) { DNA *aa = (DNA *)a; DNA *bb = (DNA *)b; return a

c语言-C语言数据打包程序 从键盘输入一组数据,输出为头+长度+类型+数据+尾;结果很奇怪

问题描述 C语言数据打包程序 从键盘输入一组数据,输出为头+长度+类型+数据+尾:结果很奇怪 typedef struct DataMessage { int file_header; //数据头 int length; // 数据长度 char type; //数据类型 char data[10]; //数据 int file_ending; //数据尾 }Message; main() { char string[100]; Message mes; int i; mes.file_head

初学者,想问大神,如何比较一组数据, 不同类型的 数据 ?求指教

问题描述 初学者,想问大神,如何比较一组数据, 不同类型的 数据 ?求指教 想问大神,如何比较一组数据, 不同类型的 数据 ?求指教,别人说可以用链表(我不会)有别的方法吗 解决方案 比较数据的关键不在链表还是数组,而在于算法本身. 如果你觉得链表复杂,就用数组,以及任何你可以用来表示一组数字的类型. 解决方案二: 不同类型的 数据,你的比较规则是什么? 一组数据,是如何保存的呢?如果是连续保存,直接按内存中的内容比较,简单一些:除非是按链表保存的,才可以用链表.否则不是在自找麻烦! 解决方案三