本文目录一览:
- 1、在C语言中 宏定义是什么?
- 2、WPS+宏代码是+JAVA+还是+Javascrip?
- 3、java 如何将doc 文件里面的宏去掉
- 4、JAVA中的直接量,宏替换,常量池,宏常量,常量
- 5、什么是Java宏??
在C语言中 宏定义是什么?
宏定义是C提供的三种预处理功能的其中一种,这三种预处理包括:宏定义、文件包含、条件编译。
宏定义又称为宏代换、宏替换,简称“宏”。
扩展资料:
宏(Macro),是一种批量处理的称谓。计算机科学里的宏是一种抽象(Abstraction),它根据一系列预定义的规则替换一定的文本模式。
解释器或编译器在遇到宏时会自动进行这一模式替换。对于编译语言,宏展开在编译时发生,进行宏展开的工具常被称为宏展开器。
宏这一术语也常常被用于许多类似的环境中,它们是源自宏展开的概念,这包括键盘宏和宏语言。绝大多数情况下,“宏”这个词的使用暗示着将小命令或动作转化为一系列指令。
C语言是一门通用计算机编程语言,广泛应用于底层开发。C语言的设计目标是提供一种能以简易的方式编译、处理低级存储器、产生少量的机器码以及不需要任何运行环境支持便能运行的编程语言。
尽管C语言提供了许多低级处理的功能,但仍然保持着良好跨平台的特性,以一个标准规格写出的C语言程序可在许多电脑平台上进行编译,甚至包含一些嵌入式处理器(单片机或称MCU)以及超级电脑等作业平台。
二十世纪八十年代,为了避免各开发厂商用的C语言语法产生差异,由美国国家标准局为C语言制定了一套完整的美国国家标准语法,称为ANSIC,作为C语言最初的标准。
目前2011年12月8日,国际标准化组织(ISO)和国际电工委员会(IEC)发布的C11标准是C语言的第三个官方标准,也是C语言的最新标准,该标准更好的支持了汉字函数名和汉字标识符,一定程度上实现了汉字编程。
C语言是一门面向过程的计算机编程语言,与C++,Java等面向对象的编程语言有所不同。
其编译器主要有Clang、GCC、WIN-TC、SUBLIME、MSVC、TurboC等。
参考资料:
宏定义-百度百科
C语言-百度百科
WPS+宏代码是+JAVA+还是+Javascrip?
wps宏
如果你安装了VBA for WPS的话, 你就可以用VBA代码写.
还有wps自带的就是javasript.
个人暂时更喜欢用VBA, 毕竟在学校也学过, 初使用wps的js, 感觉还是有一些毛病的.
java 如何将doc 文件里面的宏去掉
在数据库中存放这些个二进制文件的字段是BLOB,oracle和MysqL里面都是
java中读取 BLOB数据:
首先做查询,拿到查询结果ResultSet rs = XXXX (和普通数据查询一样)
然后:Blob blob = rs.getBlob("字段名"); 拿到你的Blob ,
得到文件的二进制流:InputStream binaryStream= blob.getBinaryStream();,
你的文件数据就在这个流当中,你想怎么用就怎么取,比如,读出来存到一个byte[]中,以便序列化传输,读出来构造成一个File直接存放到本地等等。
举个例子吧:从这个binaryStream中读取数据到byte[]的方法,
////////---------------------
/**
* 从binaryStream中读取数据到byte[]的方法
* @param in 即binaryStream
* @return
* @throws Exception
*/
public static byte[] readStreamToByteArray(InputStream in) throws Exception{
ByteArrayOutputStream outputStream = new ByteArrayOutputStream();
byte[] buffer = new byte[1024];
int len = -1;
while((len = in.read(buffer)) != -1) {
outputStream.write(buffer, 0, len);
}
outputStream.close();
in.close();
return outputStream.toByteArray();
}
//
JAVA中的直接量,宏替换,常量池,宏常量,常量
-- 直接量,在js中有这个概念,java中没听说过
直接量也称为字面量,是JavaScript中一种对象的表示(或者说创建)方式,它可以通过直接给变量赋上JavaScript中原生对象值的方式从而转换为一个相应的对象。
对象直接量提供了一种创建并初始化新对象的简单而直接的方式。
var circle={x:0, y:0, radius:2,speed:function(){alert('ok')}}
说白了==Javascript里直接量即对象的json表示法
供参考By monical
-- 宏替换 c/cpp里面的概念,不明
-- 常量池,java里指的是jvm的常量池,下面是原文:
For each type it loads, a Java Virtual Machine must store a constant pool. A constant pool is an ordered set of constants used by the type, including literals (string, integer, and floating point constants) and symbolic references to types, fields, and methods. Entries in the constant pool are referenced by index, much like the elements of an array. Because it holds symbolic references to all types, fields, and methods used by a type, the constant pool plays a central role in the dynamic linking of Java programs.
大概是讲常量池保存了各个类型的引用,对java这种动态语言很重要.
--宏常量 c/cpp里面的概念,不明
-- 常量,所有编程语言都有,java的常量就是给定的量,死的.比如int i= 1;i就是常量,不同的常量存储的区域不大一样.
分static变量,final变量,全局变量,局部变量等.
什么是Java宏??
在java中,被final关键字修饰的、设置了初始值的变量就被称为宏变量。宏变量在编译阶段就已经被固定了值,因此编译器会把程序中所有该变量出现的位置全部以初始值替换。
举个例子:
对于图1,按照预先设想的样子,s1和s5都应该是字符串“百度知道”,但是在实际的运行中,s1和s5尽管都是“百度知道”,但计算机判定它们并不相等。
原因:对于s1来说,“百度知道”算是字符串常量,因此“百度知道”这个字符串作为常量保存在常量池中。当编译器运行到String s2那一行时,因为s2也是“百度知道”,那么编译器会前往常量池中寻找“百度知道”这个常量,理所应当可以找到,所以s2将会和s1同时指向“百度知道”这个字符串常量所在的地址(也就是说s1和s2指针相同)。但是对于s5来说,编译器认为s5的本质是两个字符串变量的和,也就是“百度”+“知道”,组成s5的s3、s4的值随时可以发生变化,只不过恰好在这里它们是一样的而已,一个是常量一个是变量,当然不可能相等。
接下来,将s3、s4转为宏变量,如图2:
此时作为宏变量的s3、s4它们的值恒为“百度”、“知道”,组成的s5“百度知道”也就和s1、s2相等了。
补充:
在计算机中,宏就是在程序编译时,用一系列规定好的的规则模式去替换相应的宏变量,进行相关宏展开的工具通常被称作宏展开器。