while语句 循环结构是程序中一种很重要的结构其特点是,在给定条件成立时,反复执行某程序段,直到条件不成立为止给定的条件称为循环条件,反复执行的程序段称为循环体 (注:关键字,while,end) 执行流程图解: while语句一般是用在程序需要循环执行某些功能的地方比如:游戏里循环跑路.循环判断是否找到指定图片等等 (注意:while,end是对应的,每个while要对应一个end) 循环语句举例:找不到指定图片将一直找这个一般是处理场景有切换等情况下代码如下: while(true) va…
break语句 通常用在循环.遍历语句中.当跳出(break)语句用于循环语句中时,可使程序终止循环而执行循环后面的语句, 通常跳出 语句总是与如果语句联在一起.即满足条件时便跳出循环.可以说:跳出语句就是循环流程的克星,只要执行跳出语句,循环流程立马终止 (关键字, break) 注意: 1.只能在 while 和 for 语句中执行,执行 跳出 语句中断整个循环 2.执行 break 语句只能中断离此 跳出 语句最近的一层的循环体 举例: 1.单循环使用跳出语句 var i=0 while(…
流程语句 if语句 用if语句可以构成分支结构.它根据给定的条件进行判断,以决定执行某个分支程序段.TC综合开发工具的if语句有三种基本形式,并且每个语句的结尾都要有一个end (注:关键字,if,else,elseif,end) 执行流程图解: if语句在在开发应用使用的频率很高,一般都是用来做判断使用比如:判断是否符合某中条件等等 语句举例:实现在区域内找某一个点的颜色,支持模糊查找 var 返回的x坐标=0,返回的y坐标=0 findpic(0,0,600,800,"/sdcard/111…
1. 语句 C# 提供各种语句.使用过 C 和 C++ 编程的开发人员熟悉其中大多数语句. statement: labeled-statement declaration-statement embedded-statement embedded-statement: block empty-statement expression-statement selection-statement iteration-statement jump-statement try-statement ch…
1. 不安全代码 **(注:此章对于跨多语言编程开发非常重要,如遇异常无法完成跨语言,建议使用此种方式.) 如前面几章所定义,核心 C# 语言没有将指针列入它所支持的数据类型,从而与 C 和 C++ 有着显著的区别.作为替代,C# 提供了各种引用类型,并能够创建可由垃圾回收器管理的对象.这种设计结合其他功能,使 C# 成为比 C 或 C++ 安全得多的语言.在核心 C# 语言中,不可能有未初始化的变量.“虚”指针或者超过数组的界限对其进行索引的表达式.这样,以往总是不断地烦扰 C 和 C++ 程…
1. 表达式 表达式是一个运算符和操作数的序列.本章定义语法.操作数和运算符的计算顺序以及表达式的含义. 1.1 表达式的分类 一个表达式可归类为下列类别之一: 值.每个值都有关联的类型. 变量.每个变量都有关联的类型,称为该变量的已声明类型. 命名空间.归为此类的表达式只能出现在 member-access(第 7.6.4 节)的左侧.在任何其他上下文中,归类为命名空间的表达式将导致编译时错误. 类型.归为此类的表达式只能出现在 member-access(第 7.6.4 节)的左侧,或作为…
1. 词法结构 1.1 程序 C# 程序 (program) 由一个或多个源文件 (source file) 组成,源文件的正式名称是编译单元 (compilation unit)(第 9.1 节).源文件是有序的 Unicode 字符序列.源文件与文件系统中的文件通常具有一对一的对应关系,但这种对应关系不是必需的.为实现可移植性的最大化,建议这些文件在文件系统中应按 UTF-8 编码规范编码. 从概念上讲,程序的编译分三个步骤: 转换,这一步将用特定字符指令系统和编码方案编写的文件转换为 Un…
C# 语言规范 版本5.0 注意 © 1999-2012 Microsoft Corporation.保留所有权利. Microsoft.Windows.Visual Basic.Visual C# 和 Visual C++ 是 Microsoft Corporation 在美国和/或其他国家/地区的注册商标或商标. 本文提及的其他产品和公司名称可能是其各自所有者的商标. 目录 1. 介绍......................................................…
select语句 seelct语句,可以说是if语句的升级版,当我们的if语句嵌套太多,或者if语句判断太多的时候,都可以考虑使用选择语句 在多条件判断的时候,选择语句的执行速度比多个if语句要快而且if语句的嵌套长度是有限制的 (注:关键字,select,end) 执行流程图解: 实例代码: var f=1.0 select(f) case 1.1 messagebox("满足条件1执行这里") case 1.2 messagebox("满足条件2执行这里") c…
for语句 for和while语句一样,都是用来做循环操作的,只是他们的使用方法不一样 (注:关键字,for,end) 执行流程图解: 实例代码: for(var i=0;i<20;i++) //循环20次 var x=0,y=0 findpic(0,0,600,800,"/sdcard/111.bmp",#203040,0.8,0,x,y) if(x>-1) messagebox(x&","&y,"找到图") bre…
命令笔记 (随笔原创,借鉴请修改) linux系统中一切都是文件 2.4  系统状态的命令:  ifconfig   :    查看系统网卡信息,包括网卡名称,ip地址,掩码,mac地址,收到数据包大小和发送数据包大小. uname  :     查看系统内核信息. 参数:-a    所有信息 -r     内核版本号 uptime :     是top的第一行,系统的时间,终端数和负载.  free :    查看系统中内存使用情况. 参数:  -h    以最直观显示  -m    以单位M…
数据类型 TC综合开发工具里使用的是可变类型,就是在程序执行过程中,TC综合开发工具会自动把数据转换为需要的类型,转换失败会出现相应的提示但是在一些特殊的场景下,是需要做类型强制处理,那么这时就需要使用到TC综合开发工具里的类型空间 下面的场景就需要使用类型空间进行数据类型的强制转换: 从内存里读出的人物x坐标是100.8945,但是我们在做坐标偏移计算时,就需要把x坐标转换为整型处理使用的方法如下: var x坐标=100.8945 坐标x=cint(x坐标) //会四舍五入,结果:101 坐…
TC综合开发工具里的表达式大体分为:计算表达式.条件表达式 计算表达式: 它一般是用在赋值过程中,或者是和条件表达式混合使用这样的表达式里只有数字运算符(如:+.-.+=.*=等等运算符),没有关系运算符(如:>.== . >=.!=等等运算符)变量使用例如: 目标x =(x+偏移x)* 比例x 结果 = (150+632)*100/(89-59) 条件表达式: 它一般是用在条件判断过程中,返回的是条件成立(真)或者不成立(假).例如:如果语句.循环语句以及遍历语句它使用的是关系运算符例如:…
TC综合开发工具里支持了丰富的运算符,这样也要求大家对运算符的知识必须了解清楚,否则出现错误还不知道问题所在下面就为大家说说运算符的优先级与各个运算符含义 注意: 优先级代表同一表达式中运算符的运算顺序,从高到低!同一级别的按从左到右的原则运算 下图的优先级是从高到低排列的 优先级 运算符 名称或含义 使用形式与说明 1 [ ] 数组下标 数组名[常量表达式] ( ) 圆括号 (表达式)/函数名(形参表) 2 - 负号运算符 -表达式 -10+20 ++ 自增运算符 变量名++,是 变量名=变量…
1. 变量 变量表示存储位置.每个变量都具有一个类型,用于确定哪些值可以存储在该变量中.C# 是一种类型安全的语言,C# 编译器保证存储在变量中的值总是具有合适的类型.通过赋值或使用 ++ 和 ‑‑ 运算符可以更改变量的值. 在可以获取变量的值之前,变量必须已明确赋值 (definitely assigned)(第 5.3 节). 如下面的章节所述,变量是初始已赋值 (initially assigned) 或初始未赋值 (initially unassigned).初始已赋值的变量有一个正确定…
1. 结构 结构与类的相似之处在于,它们都表示可以包含数据成员和函数成员的数据结构.但是,与类不同,结构是一种值类型,并且不需要堆分配.结构类型的变量直接包含了该结构的数据,而类类型的变量所包含的只是对相应数据的一个引用(被引用的数据称为“对象”). 结构对于具有值语义的小型数据结构尤为有用.复数.坐标系中的点或字典中的“键-值”对都是结构的典型示例.这些数据结构的关键之处在于:它们只有少量数据成员,它们不要求使用继承或引用标识,而且它们适合使用值语义(赋值时直接复制值而不是复制它的引用)方便地…
1. 类 类是一种数据结构,它可以包含数据成员(常量和字段).函数成员(方法.属性.事件.索引器.运算符.实例构造函数.静态构造函数和析构函数)以及嵌套类型.类类型支持继承,继承是一种机制,它使派生类可以对基类进行扩展和专用化. 1.1 类声明 class-declaration 是一个 type-declaration(第 9.6 节),它用于声明一个新类. class-declaration: attributesopt   class-modifiersopt   partialopt  …
1. 转换 转换(conversion) 使表达式可以被视为一种特定类型.转换可导致将给定类型的表达式视为具有不同的类型,或其可导致没有类型的表达式获得一种类型.转换可以是隐式的 (implicit) 或显式的 (explicit),这将确定是否需要显式地强制转换.例如,从 int 类型到 long 类型的转换是隐式的,因此 int 类型的表达式可隐式地按 long 类型进行处理.从 long 类型到 int 类型的反向转换是显式的,因此需要显式地强制转换. int a = 123; long…
1. 基本概念 1.1 应用程序启动 具有入口点 (entry point) 的程序集称为应用程序 (application).应用程序运行时,将创建新的应用程序域 (application domain).同一台计算机上可能会同时运行着同一个应用程序的若干个实例,此时,每一个实例都拥有各自的应用程序域. 应用程序域用作应用程序状态的容器,以此隔离应用程序.应用程序域作为应用程序中和它使用的类库中所定义的类型的容器和边界.同一个类型若被加载到不同的应用程序域中就成为各自独立的客体,由它们在各自应…
功能的理解 功能是TC移动项目应用的基本模块,通过对功能模块的调用实现特定的功能.TC综合开发工具中的功能相当于其它高级语言的子程序,在其他高级语言中,比如C,C++中,称为函数.允许用户建立自己定义的功能用户可把自己的算法编成一个个相对独立的功能模块,然后用调用的方法来使用功能可以说TC移动应用的全部工作都是由各式各样的功能完成的,所以也把TC语言称为功能式语言. 由于采用了功能模块式的结构,TC语言易于实现结构化程序设计使程序的层次结构清晰,便于程序的编写.阅读.调试. (关键字,funct…
A. 文档注释 C# 提供一种机制,使程序员可以使用含有 XML 文本的特殊注释语法为他们的代码编写文档.在源代码文件中,可以使用特定形式的注释来指导工具从这些注释及其后的源代码元素生成 XML.使用这类语法的注释称为文档注释 (documentation comment).这些注释后面必须紧跟用户定义的类型(如类.委托或接口)或者成员(如字段.事件.属性或方法).该 XML 生成工具称为文档生成器. \t "See documentation comment" (此生成器可以但不需要…
1. 特性 C# 语言的一个重要特征是使程序员能够为程序中定义的实体指定声明性信息.例如,类中方法的可访问性是通过使用 method-modifiers(public.protected.internal 和 private)加以修饰来指定的. C# 使程序员可以创造新的声明性信息的种类,称为特性 (attributes).然后,程序员可以将这种特性附加到各种程序实体,而且在运行时环境中还可以检索这些特性信息.例如,一个框架可以定义一个名为 HelpAttribute 的特性,该特性可以放在某些…
1. 委托 **(注:此章非常重要,特别是对于图形界面相关的区别于MFC和QT等的消息机制,委托是基石.) 委托是用来处理其他语言(如 C++.Pascal 和 Modula)需用函数指针来处理的情况的.不过与 C++ 函数指针不同,委托是完全面向对象的:另外,C++ 指针仅指向成员函数,而委托同时封装了对象实例和方法. 委托声明定义一个从 System.Delegate 类派生的类.委托实例封装了一个调用列表,该列表列出了一个或多个方法,每个方法称为一个可调用实体.对于实例方法,可调用实体由该…
1. 命名空间 C# 程序是利用命名空间组织起来的.命名空间既用作程序的“内部”组织系统,也用作“外部”组织系统(一种向其他程序公开自己拥有的程序元素的方法). using 指令(第 9.4 节)用来为命名空间的使用提供方便. 1.1 编译单元 compilation-unit 定义了源文件的总体结构.编译单元的组成方式如下:先是零个或多个 using-directive,后接零个或多个 global-attributes,然后是零个或多个 namespace-member-declaratio…
1. 类型 C# 语言的类型划分为两大类:值类型 (Value type) 和引用类型 (reference type).值类型和引用类型都可以为泛型类型 (generic type),泛型类型采用一个或多个类型参数.类型参数可以指定值类型和引用类型. type: value-type reference-type type-parameter 第三种类型是指针,只能用在不安全代码中.第 18.2 节对此做了进一步的探讨. 值类型与引用类型的不同之处在于:值类型的变量直接包含其数据,而引用类型的…
1. 介绍 C#(读作“See Sharp”)是一种简洁.现代.面向对象且类型安全的编程语言.C# 起源于 C 语言家族,因此,对于 C.C++ 和 Java 程序员,可以很快熟悉这种新的语言.C# 已经分别由 ECMA International 和 ISO/IEC 组织接受并确立了标准,它们分别是 ECMA-334 标准和 ISO/IEC 23270 标准.Microsoft 用于 .NET Framework 的 C# 编译器就是根据这两个标准实现的. C# 是面向对象的语言,然而 C#…
1. 异常 C# 中的异常用于处理系统级和应用程序级的错误状态,它是一种结构化的.统一的和类型安全的处理机制.C# 中的异常机制非常类似于 C++ 的异常机制,但是有一些重要的区别: 在 C# 中,所有的异常必须由从 System.Exception 派生的类类型的实例来表示.在 C++ 中,可以使用任何类型的任何值表示异常. 在 C# 中,利用 finally 块(第 8.10 节)可编写在正常执行和异常情况下都将执行的终止代码.在 C++ 中,很难在不重复代码的情况下编写这样的代码. 在 C…
1. 枚举 枚举类型 (enum type) 是一种独特的值类型(第 4.1 节),它用于声明一组命名的常量. 下面的示例 enum Color { Red, Green, Blue } 声明一个名为 Color 的枚举类型,该类型具有三个成员:Red.Green 和 Blue. 1.1 枚举声明 枚举声明用于声明新的枚举类型.枚举声明以关键字 enum 开始,然后定义该枚举的名称.可访问性.基础类型和成员. enum-declaration: attributesopt   enum-modi…
1. 接口 一个接口定义一个协定.实现某接口的类或结构必须遵守该接口定义的协定.一个接口可以从多个基接口继承,而一个类或结构可以实现多个接口. 接口可以包含方法.属性.事件和索引器.接口本身不提供它所定义的成员的实现.接口只指定实现该接口的类或结构必须提供的成员. 1.1 接口声明 interface-declaration 是用于声明新的接口类型的 type-declaration(第 9.6 节). interface-declaration: attributesopt   interfa…
1. 数组 数组是一种包含若干变量的数据结构,这些变量都可以通过计算索引进行访问.数组中包含的变量(又称数组的元素)具有相同的类型,该类型称为数组的元素类型. 数组有一个“秩”,它确定和每个数组元素关联的索引个数.数组的秩又称为数组的维度.“秩”为 1 的数组称为一维数组 (single-dimensional array).“秩”大于 1 的数组称为多维数组 (multi-dimensional array).维度大小确定的多维数组通常称为两维数组.三维数组等. 数组的每个维度都有一个关联的长…