首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往
您找到你想要的搜索结果了吗?
是的
没有找到

C语言带参数的宏定义:#define f(X) ((X)*(X))

l 宏定义可以嵌套使用,例如:#define R 3.0#define PI 3.14159#define L 2*PI*R 3.知识点:带参数的宏定义l 一般形式:#define 宏名(参数表)...字符串l 带参数的宏不占运行时间,只占编译时间;只是简单、机械字符替换;宏名无类型。...l 要注意有括号和没括号的区别 不带参数的宏定义比较简单,我们今天讲的是带参数的。最后红色字体提到有括号、没括号的区别。那提一个问题:怎么用宏定义表示数学上的函数 f(x)=x*x ?...有同学会说,这不简单,顺手就来: #define f(X) X*X 但是,忽略了一点,宏代换是直接进行代换的。...,要注意参数要带上括号,最好整个宏也要带上括号: #define f(X) ((X)*(X)) 否则,容易误导别人的同时,自己也容易出错。

4.8K00

SpringBoot2.x基础篇:Linux后台运行Jar以及Jvm参数调优

撸码使我快乐,2020继续游走在开源界 点赞再看,养成习惯 给我来个Star吧,点击了解下基于SpringBoot的组件化接口服务落地解决方案 我们将编写的应用程序打包为Jar可执行文件后,如果在Linux...推荐阅读 SpringBoot2.x基础篇:开发你的第一个SpringBoot应用程序 SpringBoot2.x基础篇:将应用程序打包为可执行Jar SpringBoot2.x基础篇:Linux后台运行...Jar以及Jvm参数调优 Nohup命令 Linux系统或者OS X都提供了一个解决应用程序后台运行的命令,那就是nohup,我们使用该命令可以直接将要执行的任务放置在后台运行,想要停止运行时需要通过结束...pid的方式,使用方式如下所示: ➜ developing-first-application git:(2.x) ✗ nohup java -jar target/service-application...boot-jar.sh脚本使用如下: ➜ developing-first-application git:(2.x) ✗ .

1.5K30

Linux Linux内核参数调优

关于调优的建议: 1、出错时,可以查看操作系统日志,可能会找到一些有用的信息 2、尽量不要“批量”修改内核参数,笔者就曾这么干过,结果“调优”后,性能反而下降,事务出错数反而增加,所以,调优的时候可以考虑逐个参数进行调优...说明:我也不是很懂,参考自网络整理了下可能需要调整的一些参数 net.core.wmem_max=124928 发送套接字缓冲区大小的最大值(以字节为单位),参考值873200 net.core.rmem_max...通过配置TCP_TW_REUSE参数,来释放TIME_WAIT状态的端口号给新连接使用 net.ipv4.tcp_tw_recycle=1 表示开启TCP连接中TIME-WAIT sockets的快速回收...net.ipv4.tcp_fin_timeout=30 默认值60,这个参数决定了它保持在FIN-WAIT-2状态的时间,参考值 30(一般来说FIN-WAIT-2的连接也极少) net.ipv4....当出现SYN等待队列溢出时,启用cookies来处理,可防范少量SYN攻击,默认为0,表示关闭; 以下几个参数文件需要打开防火墙才会存在 net.netfilter.nf_conntrack_max=

6.6K31

Linux下安装Python3.x.x

linux一般都自带了python,然而2014年以前的linux自带的python都是2.x.x甚至更早的版本。 需要使用python3.x.x需要自行下载安装。...不能实现的代码段:wget http://www.python.org/ftp/python/3.3.2/Python-3.3.2.tar.bz2   可行的做法是:可以现在网上找到python3.x.x...的linux文件,上传到linux系统后,再安装python3.x.x 首先下载源tar包       去网上找,以下下载链接有效:http://xiazai.zol.com.cn/detail/33/...python Python 3.1.2 (r312:79147, Dec  2 2014, 11:31:20)  [GCC 4.4.6 20120305 (Red Hat 4.4.6-4)] on linux2...credits" or "license" for more information. >>> quit()     PS:如果不建立新安装路径python3,而是直接默认安装,则安装后的新python应该会覆盖linux

92320

>>技术应用:CentOS(Linux)的解压工具7za

在常规的Linux发行版中,无法通过简单的yum命令来安装该软件。那么在CentOS中,如何安装7ZIP呢(其他环境或者小工具可以百度下哈)?...在 CentOS 5.x 32位下安装7ZIP wget http://pkgs.repoforge.org/p7zip/p7zip-9.20.1-1.el5.rf.i386.rpm rpm -ivh...-1.el5.rf.x86_64.rpm rpm -ivh p7zip-9.20.1-1.el5.rf.x86_64.rpm 在 CentOS 6.x 32位下安装7ZIP wget http://pkgs.repoforge.org..._64.rpm M3 Linux(yum)安装 通过上面M2执行安装中,安装RHEL EPEL Repo后,即可使用yum安装7ZIP。...x :以完整路径解压(包含目录结构)。 zip文件解压中文文件乱码问题,由于zip文件中没有声明其编码,所以在Linux上使用unzip解压以默认编码解压,中文文件名会出现乱码。

37610

【Android 安装包优化】使用 lib7zr.a 静态库处理压缩文件 ( 交叉编译 lib7zr.a 静态库 | 安卓工程导入静态库 | 配置 CMakeLists.txt 构建脚本 )

ANDROID\7zr\jni 目录 , 执行 ndk-build 命令 , 进行交叉编译 ; 修改 Application.mk 构建脚本 : APP_ABI := armeabi-v7a arm64-v8a x86...x86_64 APP_PLATFORM := android-8 注释可执行文件的编译选项 : -fPIE 指的是生成与地址无关的可执行文件 , 该选项只能应用于可执行文件 , 不能用于静态库编译 ;...的作用是获取当前的 CPU 指令集架构 # 当本次编译 armeabi-v7a CPU 架构时 , ${ANDROID_ABI} 值为 armeabi-v7a # 当本次编译 x86...CPU 架构时 , ${ANDROID_ABI} 值为 x86 message("CMAKE_SOURCE_DIR : ${CMAKE_SOURCE_DIR}, ANDROID_ABI : ${ANDROID_ABI...表示会将 C 参数传给编译器 # 参数设置 : 传递 CMAKE_CXX_FLAGS C+= 参数给编译器时 , 在 该参数后面指定库的路径 # CMAKE_SOURCE_DIR 指的是当前的文件地址

3K30

【Android 安装包优化】使用 lib7zr.so 动态库处理压缩文件 ( 拷贝 lib7zr.so 动态库头文件到 Android 工程中 | 配置 CMakeLists.txt 构建脚本 )

, 指定动态库的查找路径 ; 使用 set() , 指定一个 CMAKE_CXX_FLAGS 编译器参数 , 在编译器参数后添加 -L 参数指定动态库查找目录 ; # 设置变量 # CMAKE_CXX_FLAGS...表示会将 C++ 的参数传给编译器 # CMAKE_C_FLAGS 表示会将 C 参数传给编译器 # 参数设置 : 传递 CMAKE_CXX_FLAGS C+= 参数给编译器时 , 在 该参数后面指定库的路径...的作用是获取当前的 CPU 指令集架构 # 当本次编译 armeabi-v7a CPU 架构时 , ${ANDROID_ABI} 值为 armeabi-v7a # 当本次编译 x86...CPU 架构时 , ${ANDROID_ABI} 值为 x86 message("CMAKE_SOURCE_DIR : ${CMAKE_SOURCE_DIR}, ANDROID_ABI : ${ANDROID_ABI...# CMAKE_C_FLAGS 表示会将 C 参数传给编译器 # 参数设置 : 传递 CMAKE_CXX_FLAGS C+= 参数给编译器时 , 在 该参数后面指定库的路径 # CMAKE_SOURCE_DIR

2.7K20
领券