搜档网
当前位置:搜档网 › system函数一些常用的命令

system函数一些常用的命令

system函数一些常用的命令
system函数一些常用的命令

C++ _access和_waccess的使用方法

概述

头文件:

执行一条命令,常被用来调用DOS命令

原型

int system( const char *command );

int _wsystem( const wchar_t *command );

参数

command

要执行的命令

返回值

如果参数command为NULL,并且命令解释器能够被找到,函数返回一个不为0的值。如果找不到命令解释器,则返回0并且设置参数errno为ENOENT。

如果command不为NULL,则system函数返回命令解释器的返回值。只有当命令解释器返回值为0时system的返回值才为0。返回值为-1表示发生了一个错误,参数errno可能被设置成以下值:

E2BIG

参数列表是太大(取决于系统)。

ENOENT

找不到命令解释器。

ENOEXEC

命令解释器文件含有无效的格式,并且是不可执行的。

ENOMEM

没有足够的内存可用于执行命令,或可用内存已损坏,或存在无效的块,表明这一进程的内存申请失败。

备注

system函数将字符串参数command传递给命令解释器,命令解释器会把该字符串当作操作系统命令来执行。system函数通过查找环境变量COMSPEC和PATH来确定命令解释器文件的路径(在Windows NT系统下,名为CMD.EXE)。如果command为NULL,

则该函数只简单的判断命令解释器文件是否存在。

在调用system之前你必须明确地清空(使用函数fflush或_flushall)或关闭所有的流。

_wsystem是system的宽字符版本,_wsystem的参数command为宽字符的字符串,其他与system相同。

实例

该实例通过system函数调用TYPE命令编辑它的源文件。

/* SYSTEM.C: This program uses

* system to TYPE its source file.

*/

#include

void main( void )

{

system( "type system.c" );

}

输出:

/* SYSTEM.C: This program uses

* system to TYPE its source file.

*/

#include

void main( void )

{

system( "type system.c" );

}

system函数是可以调用一些DOS命令,比如

system("cls");//清屏,等于在DOS上使用cls命令

下面列出常用的DOS命令,都可以用system函数调用:

ASSOC 显示或修改文件扩展名关联。

AT 计划在计算机上运行的命令和程序。

ATTRIB 显示或更改文件属性。

BREAK 设置或清除扩展式CTRL+C 检查。

CACLS 显示或修改文件的访问控制列表(ACLs)。CALL 从另一个批处理程序调用这一个。

CD 显示当前目录的名称或将其更改。

CHCP 显示或设置活动代码页数。

CHDIR 显示当前目录的名称或将其更改。

CHKDSK 检查磁盘并显示状态报告。

CHKNTFS 显示或修改启动时间磁盘检查。

CLS 清除屏幕。

CMD 打开另一个Windows 命令解释程序窗口。COLOR 设置默认控制台前景和背景颜色。

COMP 比较两个或两套文件的内容。

COMPACT 显示或更改NTFS 分区上文件的压缩。CONVERT 将FAT 卷转换成NTFS。您不能转换

当前驱动器。

COPY 将至少一个文件复制到另一个位置。

DATE 显示或设置日期。

DEL 删除至少一个文件。

DIR 显示一个目录中的文件和子目录。DISKCOMP 比较两个软盘的内容。

DISKCOPY 将一个软盘的内容复制到另一个软盘。DOSKEY 编辑命令行、调用Windows 命令并创建宏。ECHO 显示消息,或将命令回显打开或关上。ENDLOCAL 结束批文件中环境更改的本地化。

ERASE 删除至少一个文件。

EXIT 退出CMD.EXE 程序(命令解释程序)。

FC 比较两个或两套文件,并显示

不同处。

FIND 在文件中搜索文字字符串。

FINDSTR 在文件中搜索字符串。

FOR 为一套文件中的每个文件运行一个指定的命令FORMAT 格式化磁盘,以便跟Windows 使用。FTYPE 显示或修改用于文件扩展名关联的文件类型。GOTO 将Windows 命令解释程序指向批处理程序中某个标明的行。

GRAFTABL 启用Windows 来以图像模式显示

扩展字符集。

HELP 提供Windows 命令的帮助信息。

IF 执行批处理程序中的条件性处理。

LABEL 创建、更改或删除磁盘的卷标。

MD 创建目录。

MKDIR 创建目录。

MODE 配置系统设备。

MORE 一次显示一个结果屏幕。

MOVE 将文件从一个目录移到另一个目录。

PATH 显示或设置可执行文件的搜索路径。

PAUSE 暂停批文件的处理并显示消息。

POPD 还原PUSHD 保存的当前目录的上一个值。PRINT 打印文本文件。

PROMPT 更改Windows 命令提示符。

PUSHD 保存当前目录,然后对其进行更改。

RD 删除目录。

RECOVER 从有问题的磁盘恢复可读信息。

REM 记录批文件或CONFIG.SYS 中的注释。REN 重命名文件。

RENAME 重命名文件。

REPLACE 替换文件。

RMDIR 删除目录。

SET 显示、设置或删除Windows 环境变量。SETLOCAL 开始批文件中环境更改的本地化。

SHIFT 更换批文件中可替换参数的位置。

SORT 对输入进行分类。

START 启动另一个窗口来运行指定的程序或命令。SUBST 将路径跟一个驱动器号关联。

TIME 显示或设置系统时间。

TITLE 设置CMD.EXE 会话的窗口标题。

TREE 以图形模式显示驱动器或路径的目录结构。TYPE 显示文本文件的内容。

VER 显示Windows 版本。

VERIFY 告诉Windows 是否验证文件是否已正确写入磁盘。

VOL 显示磁盘卷标和序列号。

XCOPY 复制文件和目录树。

孙鑫深入详解MFC学习笔记

Windows编程 一、#define的几个注意点 ①#与##的用法; #xxx将后面的参数xxx字符串化 xxx##yyy,将两个参数连接 ②\的用法 一行结束使用,表示一行未结束。 二、函数调用约定_stdcall _stdcall是Pascal方式清理C方式压栈,通常用于Win32Api中,函数采用从右到左的压栈方式,堆栈由它自己清理。在win32应用程序里,宏APIENTRY,WINAPI,都表示_stdcall,非常常见。 相对应的_cdecl,堆栈由main()函数或者其他函数清理。 C和C++程序的缺省调用方式则为__cdecl,下图为VC++6.0的默认设置,因此在不显式写明调用约定的情况下,一般都是采用__cdecl方式,而在与Windows API打交道的场景下,通常都是显式的写明使用__stdcall,才能与Windows API保持一致。 另外,还要注意的是,如printf此类支持可变参数的函数,由于不知道调用者会传递多少个参数,也不知道会压多少个参数入栈,因此函数本身内部不可能清理堆栈,只能由调用者清理了。 三、防止头文件重复包含----预编译 在写好的类的首位加上预编译代码,例如: #ifndef xxx_h #define xxx_h Class xxx { ... }; #endif 四、HDC、CDC、CClientDC、CWindowDC HDC是平台SDK提供的全局类,与设备上下文相关 CDC则是类似于封装在CWnd中的一个HDC。 CClientDC:继承于CDC,构造函数完成获取DC,析构函数完成释放DC。 CWindowDC:继承于CDC,构造函数完成获取DC,析构函数完成释放DC,在整个窗口上绘图 CMetaFileDC:图元文件设备描述环境类 创建:CMetaFileDC dc; dc.Create(); 接下来用一般dc的绘图操作,绘图的内容均会保存至图元文件中; HMETAFILE m_hMetaFile=dc.Close();//图元文件赋予数据成员显示图元文件:用一般dc的PlayMetaFile(m_hMetaFile)显示图元文件 窗口销毁时删除图元文件 SDK函数::DeleteMetaFile(m_hMetaFile) 五、OnDraw函数、OnCreate函数 OnDraw函数:窗口重绘的时候被框架类FrameWnd调用,响应WM_PAINT消息。 OnCreate函数:窗口建立的时候调用的函数,响应WM_CREATE消息。

Proe中的常用函数关系

Proe中的部分函数关系 一、函数关系 sin 正弦Cos 余弦tan 正切asin 反正弦acos 反余弦atan 反正切sinh 双曲线余弦cosh 双曲线正弦tanh 双曲线正切spar 平方根exp e的幂方根abs 绝对值log 以10为底的对数ln 自然对数 ceil 不小于其值的最小整数floor 不超过其值的最大整数 二、齿轮公式 alpha=20 m=2 z=30 c=0.25 ha=1 db=m*z*cos(alpha) r=(db/2)/cos(t*50) theta=(180/pi)*tan(t*50)-t*50 z=0 三、蜗杆的公式da=8为蜗杆外径m=0.8 为模数angle=20压力角 L=30长度q直径系数d分度圆直径f齿根圆直径n实数

其中之间的关系 q=da/m-2 d=q*m df=(q-2.4)*m n=ceil(2*l/(pi*m)) 在可变剖面扫描的时候运用公式sd4=trajpar*360*n 在扫描切口的时候绘制此图形,其中红色的高的计算公式是sd5=pi*m/2 五、方向盘的公式sd4=sd6*(1-(sin(trajpar*360*36)+1)/8) 其中sd4是sd6的(3/4或者7/8),sin(trajpar*360*36的意思是转过360度且有36个振幅似的 六、凸轮的公式sd5=evalgraph("cam2",trajpar*360) r=150 theta=t*360 z=9*sin(10*t*360) 在方向按sin(10*t*360)的函数关系,9为高的9倍10为10个振幅似的 七、锥齿轮公式 m=4模数z =50齿轮齿数z-am=40与之啮合的齿轮齿数angle=20压力角b=30齿厚long分度圆锥角 d分度圆直径da齿顶圆直径df齿根圆直径db基圆直径关系:long=atan(z/z-am) d=m*z da=d+2*m*cos(long)

CRichEditCtrl

CRichEditCtrl MFC Library Reference Using CRichEditCtrl(https://www.sodocs.net/doc/d610987476.html,/tie/7576199.html)rich edit控件是用户能够输入和编辑文本的窗口。文本能被指定字符和段落格式,并且也能包含嵌入式OLE对象。rich edit 控件在MFC中通过CRichEditCtrl类描绘。关于哪些你想知道更多?RichEdit控件概述 如果你在对话框中使用rich edit控件(不管你的程序是SDI,MDI,还是基本对话框),你必须在对话框显示之前调用AfxInitRichEdit一次。调用此函数的典型位置 在你的程序的InitInstance成员函数中。你不必每次显示对话框时调用它,仅仅第一次就可以了。如果你使用CRichEditView你不必调用 AfxInitRichEdit.Rich edit控件(CRichEditCtrl)为格式化文本提供程序接口。然而,一个程序必须实现任一用户接口组件,这个组件对于用户格式化操作可用是必要 的。那就是,Rich edit控件支持选定文本的字符或段落属性的改变。字符属性

的一些例子就是黑粗体,斜体,字体系列,和点大小。段落属性的例子如对齐,页边空白,和移字键 (英文原文:tab stops.表示在rich edit中按下tab键光标会移动一段距离)。然而,这是给你提供的用户接口,不管那是一个工具条按钮,菜单项,或是一个格式化字符对话框。也有函数对目 前选择查询richedit控件。使用这些函数显示当前属性设置,比如,设置一个选定标记在用户接口上,如果当前选择是黑粗体字符格式属性。参见CharacterFomatting和paragraph formatting查看更多字符段落格式化信息。rich edit控件支持几乎所有多行编辑控件( multiline edit controls)的操作和通知消息。因此,使用EDIT控件的应用程序很容易的变换为使用RICH EDIT控件。附加的消息和通知(notifications)能使程序访问richedit的其它特性。参看CEdit查看编辑控件消息。与rich edit控件有关的类 CRichEditView, CRichEditDoc, 和CRichEditCntrItem类提供在MFC的文档/视图结构环境内的RICH EDIT控件的功能。CRichEditView保持着文本和文本的格式化特性。CRichEditDoc保持着视图中OLE客户项的序列。CRichEditCntrItem提供对OLE客户项的container-side

Ansys常见命令流

Ansys命令流 第一天 目标:熟悉ANSYS基本关键字的含义 k --> Keypoints 关键点 l --> Lines 线 a --> Area 面 v --> Volumes 体 e --> Elements 单元 n --> Nodes 节点 cm --> component 组元 et --> element type 单元类型 mp --> material property 材料属性 r --> real constant 实常数 d --> DOF constraint 约束 f --> Force Load 集中力 sf --> Surface load on nodes 表面载荷 bf --> Body Force on Nodes 体载荷 ic --> Initial Conditions 初始条件 第二天 目标:了解命令流的整体结构,掌握每个模块的标识 !文件说明段 /BATCH /TITILE,test analysis !定义工作标题 /FILENAME,test !定义工作文件名 /PREP7 !进入前处理模块标识 !定义单元,材料属性,实常数段 ET,1,SHELL63 !指定单元类型 ET,2,SOLID45 !指定体单元 MP,EX,1,2E8 !指定弹性模量 MP,PRXY,1,0.3 !输入泊松比 MP,DENS,1,7.8E3 !输入材料密度 R,1,0.001 !指定壳单元实常数-厚度...... !建立模型 K,1,0,0,, !定义关键点 K,2,50,0,,

K,3,50,10,, K,4,10,10,, K,5,10,50,, K,6,0,50,, A,1,2,3,4,5,6, !由关键点生成面 ...... !划分网格 ESIZE,1,0, AMESH,1 ...... FINISH !前处理结束标识 /SOLU !进入求解模块标识 !施加约束和载荷 DL,5,,ALL SFL,3,PRES,1000 SFL,2,PRES,1000 ...... SOLVE !求解标识 FINISH !求解模块结束标识 /POST1 !进入通用后处理器标识 ...... /POST26 !进入时间历程后处理器 …… /EXIT,SAVE !退出并存盘 以下是日志文件中常出现的一些命令的标识说明,希望能给大家在整理LOG文件时有所帮助 /ANGLE !指定绕轴旋转视图 /DIST !说明对视图进行缩放 /DEVICE !设置图例的显示,如:风格,字体等 /REPLOT !重新显示当前图例 /RESET !恢复缺省的图形设置 /VIEW !设置观察方向 /ZOOM !对图形显示窗口的某一区域进行缩放

《网络程序设计》复习题

1、什么叫套接字?套接字按通信性质可以分为哪两类? 2、理解线程的创建与使用方法,并能应用到程序设计中。 3、异构环境下的网络程序设计需要考虑哪些问题? 4、为什么在数据结构struct sockaddr_in中,成员变量sin_addr和sin_port需要转换为网络字节顺序,而sin_family不需要呢? 5、从网络编程的角度来简述和比较IP地址和端口的作用。 6、为什么网络编程时需要考虑字节顺序问题? 7、WinSock编程中需要哪些文件? 8、UDP程序的工作模型隐含着通信标识五元组的建立过程。这五元组在UDP的客户与服务端是由哪些函数分别确定的? 9、什么是阻塞与非阻塞通信?请解释两者的区别。 10、简述各种类型数据的发送与接收处理的方法。 11、简述基于UDP的客户机/服务器端socket编程流程。 12、什么是通信三元组和五元组?三元组和五元组每个元素在网络连接中起到什么作用? 13、为什么服务端在TCP通信过程中需要调用bind( )函数而客户端不需要?为什么客户机通常不需要绑定自己的端口号? 14、简述套接字Select模型原理,以及select模型的优势和不足。 15、简述阻塞模式服务器和客户端工作流程,以及阻塞模式套接字的优势和不足。 16、在实际应用中,很多TCP服务器程序在非正常退出时,如果立即重启服务器进程则会发生绑定服务器端口失败的错误,从而无法启动服务器进程,但等待一段时间后就可以了。为什么会发生这种情况呢?如何解决这个问题(或采取什么措施可以立即重启服务器进程)?(要求掌握setsockopt()函数的用法) 17、TCP程序的工作模型隐含着通信标识五元组的建立过程。这五元组在TCP的客户与服务端是由哪些函数分别确定的? 18、accept( )为什么要返回一个套接口?或者说,为什么要为每一个连接创建一个套接口来处理?UDP 服务器端为什么不需要多个套接口? 19、理解生产者-消费者模型,理解线程的同步与互斥方法(event和critical-section),并能应用到程序设计中。 20、采用阻塞式I/O模型时,套接字函数recv()的返回值有哪几种?分别对应什么情况? 21、closesocket()函数和shutdown()函数有何差别? 22、什么是TCP的三次握手机制?为什么要使用TCP的三次握手机制? 23、服务器端并发的两种模型及编程实现。 考试形式:闭卷 考试时间:120分钟 考试题型:选择题(2’×10=20’)、简答题(10’×6=60’)、程序设计题(20’)

ansys常用命令t z部分

514. TALLOW,TEMP1,TEMP2,TEMP3,TEMP4,TEMP5,TEMP6(定义允许应力值相应的温度) 515. TB,Lab,MAT,NTEMP,NPTS,TBOPT,EOSOPT(在非线性材料属性或特殊单元输入中激活一单元表格) 516. TBDATA,STLOC,C1,C2,C3,C4,C5,C6(定义单元表格中的数据) 517. TBLIST,Lab,MAT(列表显示材料非线性特性) 518. TBPLOT,Lab,MAT,TBOPT,TEMP,SEGN(图形显示非线性材料的应力-应变曲线)519. TBPT, oper, x,y(在应力-应变曲线上定义一个点) 【注】oper: defi 定义一个点 dele 删除一个点 x,y:坐标 520. TCHG,ELEM1,ELEM2,ETYPE2(将四面体退化单元转化为非退化单元) 521. TIME,TIME(通过时间定义载荷步) 522. TIMP,ELEM,CHGBND,IMPLEVEL(对不附属于体的四面体单元进行改进) 523. /TLABEL,XLOC,YLOC,Text(使用文字注释) 524. TOFFST,VALUE(选择温度的单位) 525. TORQ2D(计算磁场中物体上的扭矩) 526. TORQC2D,RAD,NUMN,LCSYS(计算磁场中物体上环行路径的扭矩) 527. TORQSUM,Cnam1,Cnam2,…,Cnam8,Cnam9(对2-D平面问题中单元上的电磁麦克斯韦和虚功扭矩求和) 528. TORUS,RAD1,RAD2,RAD3,THETA1,THETA2(生成环体) 【注】RAD1,RAD2,RAD3中最大直径为主半径,最小为内半径,中间值为外半径。529. TRANSFER,KCNTO,INC,NODE1,NODE2,NINC(将节点模式转换到另一坐标系中)530. TREF,TREF(定义参考温度) 531. /TRIAD,Lab(控制是否显示整体坐标系标志,并对其位置进行定义) 【注】Lab=ORIG(在原点显示坐标系)、OFF(关闭显示)、LBOT(在左下角显示坐标系)、RBOT(在右下角显示坐标系)、LTOP(在左上角显示坐标系)、RTOP(在右上角显示坐标系)。532. /TRLCY,Lab,TLEVEL,N1,N2,NINC(透明显示) 533. TRPDEL,NTRP1,NTRP2,TRPINC(删除轨迹点) 534. TRPLIS,NTRP1,NTRP2,TRPINC(列表显示轨迹点信息) 535. TRPOIN,X,Y,Z,VX,VY,VZ,CHRG,MASS(定义粒子流轨迹上的点) 536. TRTIME,TIME,SPACING,OFFSET,SIZE,LENGTH(定义流动轨迹时间间隔) 537. /TSPEC,TCOLOR,TSIZE,TXTHIC,PANGLE,IANGLE(定义文字标注属性) 538. TUNIF,TEMP(定义结构中所有节点的温度)。 【注】适用于均匀温度负载时使用) 539. /TXTRE,Lab,NUM,N1,N2,NINC(为所选项选择纹理) /TXTRE,VOLU,NUM,N1,N2,NINC(为体选择纹理) /TXTRE,ON(激活纹理显示) 540. /TYPE,WN,Type(定义显示类型) 541. TYPE,ITYPE(指定单元类型) 542. /UDOC,Wind,Class,Key(指定图例栏中图例和文本在窗口中的位置) 543. UIMP,MAT,Lab1,Lab2,Lab3,VAL1,VAL2,VAL3(求解过程中修改材料特性)544. /UNITS,Label,LENFACT,MASSFACT,TIMEFACT,TEMPFACT,TOFFSET,CHARGEFACT,FORCEFACT,HEATFACT(选择单位制)

4:一个经典的多线程同步问题汇总

一个经典的多线程同步问题 程序描述: 主线程启动10个子线程并将表示子线程序号的变量地址作为参数传递给子线程。子线程接收参数 -> sleep(50) -> 全局变量++ -> sleep(0) -> 输出参数和全局变量。 要求: 1.子线程输出的线程序号不能重复。 2.全局变量的输出必须递增。 下面画了个简单的示意图: 分析下这个问题的考察点,主要考察点有二个: 1.主线程创建子线程并传入一个指向变量地址的指针作参数,由于线程启动须要花费一定的时间,所以在子线程根据这个指针访问并保存数据前,主线程应等待子线程保存完毕后才能改动该参数并启动下一个线程。这涉及到主线程与子线程之间的同步。 2.子线程之间会互斥的改动和输出全局变量。要求全局变量的输出必须递增。这涉及到各子线程间的互斥。 下面列出这个程序的基本框架,可以在此代码基础上进行修改和验证。 //经典线程同步互斥问题 #include #include #include long g_nNum; //全局资源 unsigned int__stdcall Fun(void *pPM); //线程函数 const int THREAD_NUM = 10; //子线程个数 int main() { g_nNum = 0;

HANDLE handle[THREAD_NUM]; int i = 0; while (i < THREAD_NUM) { handle[i] = (HANDLE)_beginthreadex(NULL, 0, Fun, &i, 0, NULL); i++;//等子线程接收到参数时主线程可能改变了这个i的值} //保证子线程已全部运行结束 WaitForMultipleObjects(THREAD_NUM, handle, TRUE, INFINITE); return 0; } unsigned int__stdcall Fun(void *pPM) { //由于创建线程是要一定的开销的,所以新线程并不能第一时间执行到这来int nThreadNum = *(int *)pPM; //子线程获取参数 Sleep(50);//some work should to do g_nNum++; //处理全局资源 Sleep(0);//some work should to do printf("线程编号为%d 全局资源值为%d\n", nThreadNum, g_nNum); return 0; } 运行结果:

高中常用函数性质及图像汇总

高中常用函数性质及图像 一次函数 (一)函数 1、确定函数定义域的方法: (1)关系式为整式时,函数定义域为全体实数; (2)关系式含有分式时,分式的分母不等于零; (3)关系式含有二次根式时,被开放方数大于等于零; (4)关系式中含有指数为零的式子时,底数不等于零; (5)实际问题中,函数定义域还要和实际情况相符合,使之有意义。 (二)一次函数 1、一次函数的定义 一般地,形如y kx b =+(k ,b 是常数,且0k ≠)的函数,叫做一次函数,其中x 是自变量。当0b =时,一次函数y kx =,又叫做正比例函数。 ⑴一次函数的解析式的形式是y kx b =+,要判断一个函数是否是一次函数,就是判断是否能化成以上形式. ⑵当0b =,0k ≠时,y kx =仍是一次函数. ⑶当0b =,0k =时,它不是一次函数. ⑷正比例函数是一次函数的特例,一次函数包括正比例函数. 2、正比例函数及性质 一般地,形如y=kx(k 是常数,k≠0)的函数叫做正比例函数,其中k 叫做比例系数. 注:正比例函数一般形式 y=kx (k 不为零) ① k 不为零 ② x 指数为1 ③ b 取零 当k>0时,直线y=kx 经过三、一象限,从左向右上升,即随x 的增大y 也增大;当k<0时,?直线y=kx 经过二、四象限,从左向右下降,即随x 增大y 反而减小. (1) 解析式:y=kx (k 是常数,k ≠0) (2) 必过点:(0,0)、(1,k ) (3) 走向:k>0时,图像经过一、三象限;k<0时,?图像经过二、四象限 (4) 增减性:k>0,y 随x 的增大而增大;k<0,y 随x 增大而减小 (5) 倾斜度:|k|越大,越接近y 轴;|k|越小,越接近x 轴 3、一次函数及性质 一般地,形如y=kx +b(k,b 是常数,k≠0),那么y 叫做x 的一次函数.当b=0时,y=kx +b 即y=kx ,所以说正比例函数是一种特殊的一次函数. 注:一次函数一般形式 y=kx+b (k 不为零) ① k 不为零 ②x 指数为1 ③ b 取任意实数 一次函数y=kx+b 的图象是经过(0,b )和(- k b ,0)两点的一条直线,我们称它为直线y=kx+b,它可以看作由直线y=kx 平移|b|个单位长度得到.(当b>0时,向上平移;当b<0时,向下平移)

ANSYS常用的命令

(转)ANSYS学习也有一个来月的时间了,可是还是什么都不会!郁闷!整理了一些ANSYS 常用的命令;但深知自己的水平,还不敢保证完全正确;给大家一些参考,望指正: 1. A,P1,P2,…,P17,P18(以点定义面) 2. AADD,NA1,NA2,…NA8,NA9(面相加) 3. AATT,MAT,REAL,TYPE,ESYS,SECN(指定面的单元属性) 【注】ESYS为坐标系统号、SECN为截面类型号。 4. *ABBR,Abbr,String(定义一个缩略词) 5. ABBRES,Lab,Fname,Ext(从文件中读取缩略词) 6. ABBSAVE,Lab,Fname,Ext(将当前定义的缩略词写入文件) 7. ABS,IR,IA,--,--,Name,--,--,FACTA(取绝对值) 【注】************* 8. ACCAT,NA1,NA2(连接面) 9. ACEL,ACEX,ACEY,ACEZ(定义结构的线性加速度) 10. ACLEAR,NA1,NA2,NINC(清除面单元网格) 11. ADAMS,NMODES,KSTRESS,KSHELL 【注】************* 12. ADAPT, NSOLN, STARGT, TTARGT, FACMN, FACMX, KYKPS, KYMAC 【注】************* 13. ADD,IR, IA, IB, IC, Name, --,-- , FACTA, FACTB, FACTC(变量加运算) 14. ADELE,NA1,NA2,NINC,KSWP(删除面) 【注】KSWP =0删除面但保留面上关键点、1删除面及面上关键点。 15. ADRAG,NL1,NL2,…,NL6,NLP1,NLP2,…,NLP6(将既有线沿一定路径拖拉成面) 16. AESIZE,ANUM,SIZE(指定面上划分单元大小) 17. AFILLT,NA1,NA1,RAD(两面之间生成倒角面) 18. AFSURF,SAREA,TLINE(在既有面单元上生成重叠的表面单元) 19. *AFUN, Lab(指定参数表达式中角度单位) 20. AGEN, ITIME, NA1, NA2, NINC, DX, DY, DZ, KINC, NOELEM, IMOVE(复制面) 21. AGLUE,NA1,NA2,…,NA8,NA9(面间相互粘接) 22. AINA,NA1,NA2,…,NA8,NA9(被选面的交集) 23. AINP,NA1,NA2,…,NA8,NA9(面集两两相交) 24. AINV,NA,NV(面体相交) 25. AL,L1,L2,…,L9,L10(以线定义面) 26. ALIST,NA1,NA2,NINC,Lab(列表显示面的信息) 【注】Lab=HPT时,显示面上硬点信息,默认为空。 27. ALLSEL,LabT,Entity(选择所有实体) 【注】LabT=ALL(指定实体及其所有下层实体)、BELOW(指定实体及其下一层实体);Entity=ALL、VOLU、AREA、LINE、KP、ELEM、NODE。 28. AMESH,NA1,NA2,NINC(划分面生成面单元) AMESH,AREA,KP1,KP2,KP3,KP4(通过点划分面单元) 29. /AN3D,Kywrd,KEY(三维注释) 30. ANCNTR,NFRAM,DELAY,NCYCL(在POST1中生成结构变形梯度线的动画) 31. ANCUT,NFRAM,DELAY,NCYCL,QOFF,KTOP,TOPOFF,NODE1,NODE2,NODE3(在POST1中生成等势切面云图动画) 32. ANDATA,DELAY,NCYCL,RSLTDAT,MIN,MAX,INCR,FRCLST,AUTOCNTRKY(生成某一

CSerialPort类解析

CserialPort类的功能及成员函数介绍 CserialPort类是免费提供的串口类,Codeguru是一个非常不错的源代码网站CserialPort类支持线连接(非MODEM)的串口编程操作。 CserialPort类是基于多线程的,其工作流程如下:首先设置好串口参数,再开启串口检测工作线程,串口检测工作线程检测到串口接收到的数据、流控制事件或其他串口事件后,就以消息方式通知主程序,激发消息处理函数来进行数据处理,这是对接受数据而言的,发送数据可直接向串口发送。 介绍几个经常用到的函数: 1、串口初始化函数InitPort 这个函数是用来初始化串口的,即设置串口的通信参数:需要打开的串口号、波特率、奇偶校验方式、数据位、停止位,这里还可以用来进行事件的设定。如果串口初始化成功,就返回TRUE,若串口被其他设备占用、不存在或存在其他股占,就返回FALSE,编程者可以在这儿提示串口操作是否成功如果在当前主串口调用这个函数,那么pPortOwner可用this指针表示,串口号在函数中做了限制,只能用1,2,3和4四个串口号,而事实上在编程时可能用到更多串口号,可以通过通过注释掉本函数中“assert(portur>0&&portnr<5)”语句取消对串口号的限制。 if (m_ComPort[0].InitPort(this,1,9600,'N',8,1,EV_RXFLAG | EV_RXCHAR,512)) //portnr=1(2),baud=9600,parity='N',databits=8,stopsbits=1,

//dwCommEvents=EV_RXCHAR|EV_RXFLAG,nBufferSize=512 { m_ComPort[0].StartMonitoring(); //启动串口监视线程 SetTimer(1,1000,NULL); //设置定时器,1秒后发送数据} e lse { CString str; str.Format("COM1 没有发现,或被其它设备占用"); AfxMessageBox(str); } 2、启动串口通信监测线程函数StartMonitoring() 串口初始化成功后,就可以调用BOOL StartMonitoring()来启动串口检测线程,线程启动成功,返回TRUE。 BOOL CSerialPort::StartMonitoring() { if (!(m_Thread = AfxBeginThread(CommThread, this))) return FALSE; TRACE("Thread started\n"); return TRUE; } 注意这个函数一旦调用,就会建立一个线程,这个线程一直不会结束,调用StopMonitoring ()只是将这个线程挂起。 3、暂停或停止监测线程函数StopMonitoring() 该函数暂停或停止串口检测,要注意的是,调用该函数后,串口资源仍然被占用 // // Suspend the comm thread // BOOL CSerialPort::StopMonitoring() { TRACE("Thread suspended\n"); m_Thread->SuspendThread(); return TRUE; } 4、关闭串口函数ClosePort() 该函数功能是关闭串口,释放串口资源,调用该函数后,如果要继续使用串口,还需要调用InitPort()函数。 这里有一个问题,在以前的版本中,如果调用了StartMonitoring函数,关闭串口后,再打开就会出现问题,及网上所说的关闭死锁问题。找了大量资料后,

ANSYS命令流及注释详解

ANSYS最常用命令流+中文注释 VSBV, NV1, NV2, SEPO, KEEP1, KEEP2 —Subtracts volumes from volumes,用于2个solid相减操作,最终目的是要nv1-nv2=?通过后面的参数设置,可以得到很多种情况:sepo项是2个体的边界情况,当缺省的时候,是表示2个体相减后,其边界是公用的,当为sepo的时候,表示相减后,2个体有各自的独立边界。keep1与keep2是询问相减后,保留哪个体?当第一个为keep时,保留nv1,都缺省的时候,操作结果最终只有一个体,比如:vsbv,1,2,sepo,,keep,表示执行1-2的操作,结果是保留体2,体1被删除,还有一个1-2的结果体,现在一共是2个体(即1-2与2),且都各自有自己的边界。如vsbv,1,2,,keep,,则为1-2后,剩下体1和体1-2,且2个体在边界处公用。同理,将v换成a 及l是对面和线进行减操作! mp,lab, mat, co, c1,…….c4 定义材料号及特性 lab: 待定义的特性项目(ex,alpx,reft,prxy,nuxy,gxy,mu,dens) ex: 弹性模量 nuxy: 小泊松比 alpx: 热膨胀系数 reft: 参考温度 reft: 参考温度 prxy: 主泊松比 gxy: 剪切模量 mu: 摩擦系数 dens: 质量密度 mat: 材料编号(缺省为当前材料号) co: 材料特性值,或材料之特性,温度曲线中的常数项 c1-c4: 材料的特性-温度曲线中1次项,2次项,3次项,4次项的系数 定义DP材料: 首先要定义EX和泊松比:MP,EX,MA T,…… MP,NUXY,MAT,…… 定义DP材料单元表(这里不考虑温度):TB,DP,MA T 进入单元表并编辑添加单元表:TBDATA,1,C TBDATA,2,ψ TBDATA,3,…… 如定义:EX=1E8,NUXY=0.3,C=27,ψ=45的命令如下:MP,EX,1,1E8 MP,NUXY,1,0.3 TB,DP,1 TBDATA,1,27 TBDATA,2,45这里要注意的是,在前处理的最初,要将角度单位转化到“度”,即命令:*afun,deg VSEL, Type, Item, Comp, VMIN, VMAX, VINC, KSWP Type,是选择的方式,有选择(s),补选(a),不选(u),全选(all)、反选(inv)等,其余方式不常用 Item, Comp 是选取的原则以及下面的子项 如volu 就是根据实体编号选择, loc 就是根据坐标选取,它的comp就可以是实体的某方向坐标! 其余还有材料类型、实常数等 MIN, VMAX, VINC,这个就不必说了吧! ,例:vsel,s,volu,,14 vsel,a,volu,,17,23,2 上面的命令选中了实体编号为14,17,19,21,23的五个实体 VDELE, NV1, NV2, NINC, KSWP: 删除未分网格的体 nv1:初始体号 nv2:最终的体号 ninc:体号之间的间隔 kswp=0:只删除体 kswp=1:删除体及组成关键点,线面 如果nv1=all,则nv2,ninc不起作用 其后面常常跟着一条显示命令VPLO,或aplo,nplo,这个湿没有参数的命令,输入后直接回车,就可以显示刚刚选择了的体、面或节点,很实用的哦! Nsel, type, item, comp, vmin, vmax, vinc, kabs 选择一组节点为下一步做准备 Type: S: 选择一组新节点(缺省) R: 在当前组中再选择 A: 再选一组附加于当前组 U: 在当前组中不选一部分 All: 恢复为选中所有 None: 全不选 Inve: 反向选择 Stat: 显示当前选择状态 Item: loc: 坐标 node: 节点号

C多线程编程实例实战

C#多线程编程实例实战 问题的提出 所谓单个写入程序/ 多个阅读程序的线程同步问题,是指任意数量的线程访问共享资源时,写入程序(线程)需要修改共享资源,而阅读程序(线程)需要读取数据。在这个同步问题中,很容易得到下面二个要求: 1 )当一个线程正在写入数据时,其他线程不能写,也不能读。 2 )当一个线程正在读入数据时,其他线程不能写,但能够读。在数据库应 用程序环境中经常遇到这样的问题。比如说,有n 个最终 用户,他们都要同时访问同一个数据库。其中有m个用户要将数据存入数据库,n-m 个用户要读取数据库中的记录。 很显然,在这个环境中,我们不能让两个或两个以上的用户同时更新同一条记录,如果两个或两个以上的用户都试图同时修改同一记录,那么该记录中的信息就会被破坏。 我们也不让一个用户更新数据库记录的同时,让另一用户读取记录的内容。因为读取的记录很有可能同时包含了更新和没有更新的信息,也就是说这条记录是无效的记录。 实现分析 规定任一线程要对资源进行写或读操作前必须申请锁。根据操作的不同,分为阅读锁和写入锁,操作完成之后应释放相应的锁。将单个写入程序/ 多个阅读程序的要求改变一下,可以得到如下的形式: 一个线程申请阅读锁的成功条件是:当前没有活动的写入线程。 一个线程申请写入锁的成功条件是:当前没有任何活动(对锁而言)

的线程 因此,为了标志是否有活动的线程,以及是写入还是阅读线程,引入一个变量m_nActive ,如果m_nActive > 0 ,则表示当前活动阅读线程的数目,如果 m_nActive=0 ,则表示没有任何活动线程,m_nActive <0 ,表示当前有写入线程在活动,注意m_nActive<0 ,时只能取-1 的值,因为只允许有一个写入线程活动。 为了判断当前活动线程拥有的锁的类型,我们采用了线程局部存储技术(请参阅其它参考书籍) ,将线程与特殊标志位关联起来。 申请阅读锁的函数原型为:public void AcquireReaderLock( int millisecondsTimeout ) ,其中的参数为线程等待调度的时间。函数定义如下:public void AcquireReaderLock( int millisecondsTimeout ) { // m_mutext 很快可以得到,以便进入临界区m_mutex.WaitOne( ); // 是否有写入线程存在 bool bExistingWriter = ( m_nActive < 0 ); if( bExistingWriter ) { // 等待阅读线程数目加1, 当有锁释放时,根据此数目来调度线程 m_nWaitingReaders++; } else { // 当前活动线程加1 m_nActive++; } m_mutex.ReleaseMutex();

Excel常用函数详解

计算机二级考试MS_Office应用Excel函数 =公式名称(参数1,参数2,。。。。。) =sum(计算范围) =average(计算范围) =sumifs(求和范围,条件范围1,符合条件1,条件范围2,符合条件2,。。。。。。) =vlookup(翻译对象,到哪里翻译,显示哪一种,精确匹配) =rank(对谁排名,在哪个范围里排名) =max(范围) =min(范围) =index(列范围,数字) =match(查询对象,范围,0) =mid(要截取的对象,从第几个开始,截取几个) =int(数字) =weekda y(日期,2) =if(谁符合什么条件,符合条件显示的内容,不符合条件显示的内容) =if(谁符合什么条件,符合条件显示的内容,if(谁符合什么条件,符合条件显示的内容,不符合条件显示的内容)) SUM函数 简单求和。 函数用法 SUM(number1,[number2],…) =SUM(A1:A5)是将单元格 A1 至 A5 中的所有数值相加; =SUM(A1,A3,A5)是将单元格 A1,A3,A5 中的数字相加。 SUMIFS函数 根据多个指定条件对若干单元格求和。 函数用法 SUMIFS(sum_range, criteria_range1, criteria1, [criteria_range2, criteria2], ...) 1) sum_range 是需要求和的实际单元格。包括数字或包含数字的名称、区域或单元格引用。忽略空白值和文本值。 2) criteria_range1为计算关联条件的第一个区域。 3) criteria1为条件1,条件的形式为数字、表达式、单元格引用或者文本,可用来定义将对criteria_range1参数中的哪些单元格求和。例如,条件可以表示为32、“>32”、B4、"苹果"、或"32"。 4)criteria_range2为用于条件2判断的单元格区域。 5) criteria2为条件2,条件的形式为数字、表达式、单元格引用或者文本,可用来定义将对criteria_range2参数中的哪些单元格求和。 4)和5)最多允许127个区域/条件对,即参数总数不超255个。 VLOOKUP函数 是Excel中的一个纵向查找函数,按列查找,最终返回该列所需查询列序所对应的值。

ANSYS常用命令总结大全

161. EMF(电磁场分析中计算沿路径的电动势和电压降) 162. EMID,Key,Edges(增加或删除中间节点) 163. EMODIF,IEL,STLOC,I1,I2,I3,I4,I5,I6,I7,I8(调整单元坐标系方向)164. EMORE,Q,R,S,T,U,V,W,X(单元节点超过个时,在E命令后使用)165. EMUNIT, Lab, V ALUE(定义磁场单位) 166. EN,IEL,IJ,K,L,M,N,O,P(通过节点生成指定单元) 167. ENGEN,IINC,ITIME,NINC,IEL1,IEL2,IEINC,MINC,TINC,RINC,CINC,SINC,DX,DY,DZ(元素复制:用户自己进行编号) 168. ENORM,ENUM(重新定义壳单元的法线方向) 169. ENSYM,IINC,--,NINC,IEL1,IEL2,IEINC(镜像生成新单元:用户自己进行编号) 170. EPLOT(元素显示) 171. ERASE(擦除当前图形窗口显示的内容) 172. EREFINE,NE1,NE2,NINC,LEVEL,DEPTH,POST,RETAIN(将单元附近的单元网格细化) 173. ERESX,Key(控制单元积分点解的外推方式) Key=DEFA(线形材料单元节点解由积分点解外推得到) YES(节点解由积分点解外推得到) NO(节点解由积分点解拷贝得到) 174. ERNORM,Key(定义是否进行误差估计) 175. ERRANG,EMIN,EMAX,EINC(从文件读入单元数据) 176. ESEL, Type, Item, Comp, VMIN, VMAX, VINC, KABS(选择单元子集) 177. /ESHAPE,SCALE(显示单元形状) 178. ESIZE,SIZE,NDIV(指定线划分单元的默认数目) 179. ESLA, Type(选择已选面上的单元) 180. ESLL, Type(选择已选线上的单元) 181. ESLN, Type, EKEY, NodeType(选择已选节点上的单元) 182. ESORT,Item,Lab,ORDER,KABS,NUMB(对单元数据指定新的排序方式)183. ESURF,XNODE,Tlab,Shape(在既有单元表面生成表面单元) 184. ESYM,--,NINC,IEL1,IEL2,IEINC(镜像生成新单元:自动编号) 185. ESYS,KCN(定义单元坐标系。【注】只能通过局部坐标系定义) 186. ET,ITYPE,Ename,KOPT1,KOPT2,KOPT3,KOPT4,KOPT5,KOPT6,INOP R(定义单元) 【注】KOPT1~KOPT6为元素特性编码,BEAM3的KOPT6=1时,表示分析后的结果可输出节点的力或力矩。 187. ETABLE,Lab,Item,Comp(将单元某项结果作成表格) 【注】Lab为字段名,最多8个字符;Item,Comp分别为单元输出表中的名称和分量。

高级语言C++程序设计高级编程-期末考试 - 答案

高级语言C++程序设计-高级编程-考试试卷—答案 姓名: ________________ 成绩__________________ 第一题选择( 1. 设x和y均为bool量,则x&&y为真的条件是( A ) A)它们均为真B)其中一个为真C)它们均为假D)其中一个为假 2. 假定a为一个整型数组名,则元素a[4]的字节地址为( C ) A)a+4 B)a+8 C)a+16 D)a+32 3. 下面的哪个保留字不能作为函数的返回类型( C ) A)void B)int C)new D)long 4. 在编译指令中,宏定义使用哪个指令( B ) A)#include B)#define C)#if D)#else 5. 设存在函数int max(int,int)返回两参数中较大值,若求22,59,70三者中最大值,下列表达式不正确的是:(C ) A)int m = max(22,max(59,70));B)int m = max(max(22,59),70); C)int m = max(22,59,70);D)int m = max(59,max(22,70)); 6. 对于int *pa[5];的描述中,正确的是:( D ) A)pa是一个指向数组的指针,所指向的数组是5个int型元素 B)pa是一个指向某数组中第5个元素的指针,该元素是int型变量 C)pa[5]表示数组的第5个元素的值,是int型的值 D)pa是一个具有5个元素的指针数组,每个元素是一个int型指针 7. 对C++语言和C语言的兼容性,描述正确的是:( A ) A)C++兼容C B)C++部分兼容C C)C++不兼容C D)C兼容C++ 8. 下列的各类函数中,不是类的成员函数。( C ) A)构造函数B)析构函数C)友元函数D)拷贝初始化构造函数 9. 在类定义的外部,可以被访问的成员有( C ) A)public和protected类成员B)private的类成员 C) 仅public的类成员D)public和private的类成员 10. 关于类和对象不正确的说法是:( C ) A)类是一种类型,它封装了数据和操作B)对象是类的实例 C)一个类的对象只有一个D)一个对象必属于某个类 11. 在C++中用( D )能够实现将参数值带回。 A)数组和指针B)指针和引用C)仅指针D)数组, 指针和引用 12. 在公有继承的情况下,基类的成员(私有的除外)在派生类中的访问权限( B ) A)受限制B)保持不变C)受保护D)不受保护 13. 关于构造函数的说法,不正确的是:( A ) A)没有定义构造函数时,系统将不会调用它B)其名与类名完全相同 C)它在对象被创建时由系统自动调用D)没有返回值 14. 系统在调用重载函数时,不能作为确定哪个重载函数被调用的依据是:( D )

相关主题