笼统的数据处理

news/2024/11/19 6:19:19/文章来源:https://www.cnblogs.com/nagisb/p/18464300

通常来说,根据数据类型可以将编程语言分为两类:

强类型语言

  • 强类型语言(Strongly typed language)不仅强制要求事先声明变量,还要求声明每个变量的数据类型,这样编译器就能准确地知道这个变量中的值的类型。强类型语言在数据类型上要求很严格:必须事先说明变量中存放的数据的类型,而在程序的代码中不将其他类型的数据存放到变量中。若将某个变量声明为数字,那么编辑器就认为存放的是一个数字;若违反了这个规定 ,比如将日期存放在这个变量中,比那机器就会报错。

弱类型语言

  • 在弱类型语言(loosely typed language)中,无需事先声明变量的数据类型。但存放在变量的数据类型依然是个需要注意的问题(不能要求计算机2 + banana),但弱数据类型不会在这个问题上斤斤计较。通常,在弱类型语言中都无法声明数据类型,而强类型语言则强制要求声明每个变量的数据类型

编译型语言

  • 编译型语言通常都是强类型的,但也确实存在介于两者之间的语言。用编译型语言编写的代码预先由编译器处理,生成一个经过优化的二进制可执行文件————例如EXE文件。脚本语言事先不会被编译,而是在运行时编译。

编译型语言流程

  1. 在普通文本中编写代码
  2. 将代码编译成可执行文件
  3. 执行编译好的可执行文件
  4. 程序运行

脚本型语言

  • 脚本语言通常都是弱类型的, 其中运行时引擎(runtime engine)会在运行时解释代码,而不是事先编译

脚本型语言流程

  1. 在普通文本中编写代码
  2. 执行脚本文件
  3. 脚本运行时引擎在程序运行时编译代码
  4. 程序运行

由于代码实在程序运行时才编译,所以编译器会检查变量存放的数据和操作合理的猜测其数据类型(2 + banana),进行隐式转换

因此准寻变量用途唯一原则,避免隐式转换

Dim strFirst,lngSecondstrFirst=CStr(50)
lngSecond=CLng(100)
result=strFirst+lngSecond
Msgbox result' 两个变量都是字符串子类型,会将进行字符串连接
' 其中有一个式数字子类型,隐式转换Str->double
' MsgBox将内容转为字符串输出,隐式转换double->str
' STDOUT标准输出函数的隐式转换后会恢复成原来的类型-->没有返回值
' 其中的字符串子类型不含有数字,相加会产生"Type Mismatch"错误.
#! /bin/bashstrFirst="50"
IntSecond=100
result=$[$strFirst + $IntSecond]
echo $result# echo将内容转为字符串输出,隐式转换double->str
# echo不会将$result解释成普通的字符串,格式化成变量后再解释隐式转换str

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/836606.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

GitLab私有仓库概述及环境部署

作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任。 目录一.gitlab概述1.gitlab介绍2.gitlab架构3.gitlab推荐配置二.部署gitlab前准备1.ubuntu系统环境安装前准备1.1 配置Ubuntu主机名1.2 配置Ubuntu远程链接1.3 配置ubuntu仓库1.4 修改终端颜色1.5 重启虚拟机…

RHEL8.10上搭建dhcp-relay服务

日期:2024.11.17 目的:在rhel8上搭建dhcp-relay服务,让搭建在lan网段(10.31.0.0/24)中的DHCP服务器rocky9(10.31.0.1/24),可以给dmz网段(172.31.0.0/24)中的主机提供服务 参照:鸟哥Linux私房菜 https://linux.vbird.org/linux_server/rocky9/0220dhcp_ntp.php#9.3 3…

ROCKY9.4上搭建DHCP服务

日期:2024.11.14 内容:在虚拟的LAN网络中(10.31.0.0/24)的ROCKY9.4(10.31.0.1/24)上搭建DHCP服务器,供LAN网络中其余主机自动获取IP地址 参照:鸟哥Linux私房菜 马哥教育王晓春老师课程安装DHCP服务 [root@ROCKY9 ~]# dnf info dhcp-server Last metadata expiration check:…

dyld: 神秘的 __dso_handle

dyld: 神秘的 __dso_handleiOS动态链接器dyld中有一个神秘的变量__dso_handle: // dyld/dyldMain.cpp static const MachOAnalyzer* getDyldMH() { #if __LP64__// 声明 __dso_handleextern const MachOAnalyzer __dso_handle;return &__dso_handle; #else... #endif // __…

攻防世界-转轮机加密

解法1:参考:https://blog.csdn.net/weixin_45556441/article/details/110851390解法2:book = ["NACZDTRXMJQOYHGVSFUWIKPBEL","FHTEQGYXPLOCKBDMAIZVRNSJUW","QGWTHSPYBXIZULVKMRAFDCEONJ","KCPMNZQWXYIHFRLABEUOTSGJVD","SXCD…

攻防世界-栅栏密码

原理加密分为经典型和W型题目解题 W型解密(多数默认)链接: https://www.a.tools/Tool.php?Id=264 https://ctf.bugku.com/tool/railfence

攻防世界-safer_than_rot13(替代密码)

题目解题解密链接:http://quipqiup.com/ 参考:https://blog.csdn.net/xiao__1bai/article/details/121692829

如何在notion中复制表格

Notion有个非常二货的地方: 不能直接复制表格,如果想把表格A中内容复制到表格B中,需要先把A中想复制的内容放到excel中,再从excel中放入B中,且需要在B中指定放置范围。 例如:表格A直接在notion中复制该表格A后,无法在下面的表格B中直接粘贴:表格B 如何才能将A中内容复制…

考研打卡(21)

开局(21) 开始时间 2024-11-18 20:08:09 结束时间 2024-11-19 01:07:55今天凌晨两点渴醒了,然后起床喝水,耍手机刷到两点多才睡着数据结构在一棵二叉树中有30个叶子结点,仅有一个孩子的结点有20个, 则该二叉树共有_____ 个结点(北京师范大学 2017年) A 79 B 76 C 56 D 81…