软件编程问题与错误的总结(精选)

时间:2019-05-12 03:57:20下载本文作者:会员上传
简介:写写帮文库小编为你整理了多篇相关的《软件编程问题与错误的总结(精选)》,但愿对你工作学习有帮助,当然你在写写帮文库还可以找到更多《软件编程问题与错误的总结(精选)》。

第一篇:软件编程问题与错误的总结(精选)

我的总结

1.在H文件中定义的变量可以再main函数中用,要包括头文件;但main之前定义的全局变量不能在头文件中用。(重复定义的错误)。2.在写程序时,必须首先画出它的程序流程图,也就是程序的走向。一步一步的将他在纸上写出来。3.调用数组函数时,数组一般用的是数组名。

4.即使a、b是空类型(void)的函数,当a函数要调用b函数情况发生,b函数必须写在a函数的前面。5.遇到问题不要慌,认真对待!从软件开始,一步一步地排除原因,当实在找不出原因时,再检查硬件电路。6.在定义函数时,无论是形参还是全局变量都要对其初始化,既方便自己写程序,也减少了不必要的错误。7.中断程序里不要定义变量,定义变量一般在主函数开始的时候。

8.在调试程序中,我们要观察程序执行到哪里,可以用一个发光二极管去检测。9.用switch语句有时候可以让程序并行。10.C语言中的结构体是一个重点。

11.不要交叉调用C头文件。也就是在争论先有鸡还是先有蛋的问题。12.中断里不要又太长的程序,要是周期性中断,就必须保证有一定的阈值,否则程序就有可能跑错。13.当程序中需要用到一些并列的语句时,可以设置一个标志变量Flag。当情况一发生时,Flag会自行加加,否则清零。在接下来的另一种情况中让程序在Flag为0 的条件下执行。这样就达到了并列的效果。14.变量一般不定义在H文件中,因为当两个C文件同时用到某个全局变量时,那么就相当于对全局变量定义了两次,实际上这是不允许的。正确的处理方法是在要用的时候进行变量定义,然后在H文件中进行申明,申明为外部变量。最后在C文件中区定义。15.静态变量和全局变量的好处就是:系统不会回收他们的内存。也就是说,他们会保持上一次的值,也就是他们与局部变量的不同。同样决定了他们的不足。16.“->” 表示指向结构体运算符,它的结合方向是从左向右的,优先级最高。17.x*x不能写作x^2,在C语言中,“^”表示按位异或的意思。

18.定义结构体变量时,首先在H文件中申明,然后在C文件中要定义一个与结构体相关的变量。这样在程序中才能应用。例如:先在H文件中申明一个结构体extern typedef struct A{„„„„}A;然后再C文件中定义A Other;这样Other也具有和结构体A相同的形式。

19.调用带指针操作的函数时,在形参的传递时,注意用的是取址操作符’&’,还是指针操作符’*’。20.对于乘除操作时,采用左移和右移的方法,比乘除执行的速度要快。21.在对信号采集时,我们经常会碰到数的更新。有两种方法。方法一:设定一个数组,每次先将a[i+1] = a[i],然后用当前值对a[0]进行更新。方法二:也是设定一个数组,在这里,处理的比较简单。只需将最旧的那个数进行更新就可以了。也就是说第一次将当前值赋值给a[0],第二次赋值给a[1],以此类推,进行无限的循环。22.取表法是单片机程序中很常用的一种编程思想:要显示的数据之间不存在简单的运算关系,不能使用ADD和SUBB等指令根据上一个状态计算出下一个状态的显示值。但显示的数据存在依次取用的特点,这是一般就会用到取表法。23.很多时候可以单步执行,然后用示波器去检测输出口的波形,看到底程序是否跑对。24.单片机与计算机进行串口通信时,计算机端一般只设定整数值的波特率,这样造成了单片机与计算机的通信的波特率不全相等,导致传输错误的发生。串口通信模块中有两条指令经常用到:“JBC TI,CHECK”和“JB RI,CHECK”他们分别用来检测发送中断标志位TI和接收中断标志位RI,用来判断接收完成情况。25.边沿触发对电平的要求是:如果晶振为12MHz ,至少需要1个机器周期的高电平,且向低电平跳变之后至少保持一个机器周期的低电平。26.在主函数的内部,定义局部变量一定要放在任何函数或语句执行之前,否则肯定报错。27.对于一个程序,中断是一个很重要的东西,设置好中断,程序会很简单。28.有时候想问题不能死钻牛角尖,不是那里的问题,就不是。比如说有些I/O口的输入输出设置,是一个很玄乎的东西,想问题深入一点,细致一点。29.注意引脚输入输出的定义,特别是一些好的单片机,对引脚的输入输出有特殊的设置要求。例如:飞思卡尔的单片机的PE0和PE1只能作为固定输入。30.在很多时候应该想一些问题的另一面,如果SMOD为某一寄存器的一位,其值只能是0或者是1.那么,2^SMOD =(SMOD + 1).有些运算就得到了简化。31.写程序时,应该尽量用一些“与或非”操作。例如一个寄存器PCON.如果有操作:PCON |=0x80(就是将PCON的最高位写1,其他位不管)。而如果有操作PCON &=0x80(就是将PCON的低七位都清零)。与或非操作能够大量的缩短程序执行的时间,增强了代码的可读性。32.对某一个端口的某些位进行操作时,不管其他位的状态,需要用到或与相关的知识。例如,对P3口的高四位进行读值时,不考虑低四位的状态。可以用一个&符号。即temp=P3&0xf0;这样低四位的值肯定全为零。而高四位就保持了状态。33.AD9852_Data[0]=((unsigned char*)&FTW)[5];这条语句的意思是:第一步,&FTW是C中常用的一个取址的操作,取数组FTW的地址;第二步,对原本的数组FTW中的所有数据进行强制转换。第三步,是对数组中的数的取出。即FTW[5]。34.#define

AD9852_Set_IORESET()

do{AD9852_IORESET_DIR = 1;

AD9852_IORESET_OUT = 1;} while(0)

在以后有些函数用的比较多时,尽量在宏定义中去写。宏定义中的函数尽量都是最底层的函数,也就是没有调用任何函数,都是对寄存器的操作。35.宏定义的作用就是纯属的一个复制作用,它是把一些经常用到的函数写在宏定义中。这样的话就方便程序的修改。36.DDRA&=0xF8;DDRA|=temp;这两句操作第一句能保证低三位首先清零。Temp的值也就是你要定义的低三位的输入或输出状态。这样的位操作在程序中用的比较多。应多加应用。37.当函数的形参是全局变量的时候,这个时候可以将形参省略不写,省略了不必要的代码,但是也增加了别人读代码的难度。38.有时候某些端口必须有触发功能,也就是说它是上电复位的,在系统板上按复位键和按运行键是有本质区别的。39.以后在写程序的时候尽量做到模块化,也就是说,在对端口的定义的时候,尽量不要直接写PORTA或者PORTB等。可以这样定义: #define Set_Rs PTS_PTS2 = 1 #define Clr_Rs PTS_PTS2 = 0(定义它的控制字)

#define ad9851_w_clk_dir DDRB_DDRB0(定义输入输出方向)

这样写的话以后可以方便改写端口,增强程序的可移植性。

40.有时候,数据需要转换,读数据的时候对应的输出端口的方向是输入,而写数据的时候对应的端口是输出。41.有的时候写程序的想法不能太死,比如说吧:a要从0到100,以10为步进,大多数人的想法是这样的,if(a>=0&&a<10)do something;

else if(a>=10&&a<20)do something „„„

就这样一直写下去。现在我们回头来想一下,到底需要怎么写,可以减少程序的代码量。我们可以向下面这样写: if(a>90)do something;else if(a>80)do something„„„ 从这样的操作可以看出,减少了代码量,还不会影响程序的执行。42.在以后的程序设计中,尽量写好程序的相关说明,最好像下面的所示: /***************************************************************** * 名 称:Test(void)* 功 能:测试液晶屏 * 入口参数:无 * 出口参数:无

* 说 明:测试液晶屏是否正常工作 * 调用方法:Test();******************************************************************/ 43.我们写的函数应该是容易让别人读懂的,更应该具有通用性。比如说画一个坐标轴xOy。就要写的方便别人改一点。可以这样写:

Draw_XY(y_org,x_org,Red);这样写谁都能看明白:y_org表示y轴的原点所在处。x_org表示x轴的原点所在处。Red表示画出的圆的颜色。写的程序就方便改了,代码也就很灵活。44.程序中应该不要出现,延时1毫秒以上的程序,最好都是通过中断产生的。无论什么时候我们都要以实际应用的角度去考虑程序的书写。45.对于一个程序员,如何释放CPU,这是写合格程序的基础。

46.以后写程序,将所有的Typedef、#define、常量的定义都放在一个头文件MacroandConst.h中。47.C中的头文件经常会用到枚举法这个概念,比如说吧,在头文件中,经常会出现以下的:enum{black,blue,red,„„„}color;在程序中是这样处理的。switch{case black: do something;break;case red:do something;break;„„„}这里情况默认的情况是这样的,black=0;blue=1;red=2;„„所以称之为枚举法。当然也可以对初始的那个颜色赋值,例如:black=1;那么后面的数就会都加1.枚举法在头文件中经常会用到,要熟加掌握。

48.头文件的定义中,如果代码写到了另外一行,一般情况下,要加上续行指令。续行指令的符号为“/”。

第二篇:软件编程规范总结

软件编程规范总结

本规范的内容包括:基本原则、布局、注释、命名规则、变量常量与类型、表达式与语句、函数与过程、可靠性、可测性、断言与错误处理等。

一、基本原则

1.2.3.4.5.6.7.保持代码的简明清晰,避免过分的编程技巧。所有的代码尽量遵循ANSI C标准。

编程时首先达到正确性,其次考虑效率。避免或少用全局变量。尽量避免使用GOTO语句。尽可能重用、修正老的代码。尽量减少同样的错误出现的次数。

二、文件布局

1.头文件必须要避免重复包含。

2.包含标准库头文件用尖括号 <>,包含非标准库头文件用双引号 “”。3.遵循统一的顺序书写类的定义及实现。类的定义(在定义文件中)按如下顺序书写:

公有属性

公有函数

保护属性

保护函数

私有属性

私有函数

类的实现(在实现文件中)按如下顺序书写:

构造函数

析构函数 公有函数 保护函数 私有函数

4.程序中一行的代码和注释不能超过80列。5.定义指针类型的变量,*应放在变量前。

6.源程序中关系较为紧密的代码应尽可能相邻。iLength iWidth = 10;

= 5;// 矩形的长与宽关系较密切,放在一起。

StrCaption = “Test”;

7.禁止使用TAB键,必须使用空格进行缩进。缩进为4个空格。

8.程序的分界符‘{’和‘}’应独占一行并且位于同一列,同时与引用它们的语句左对齐。{ }之内的代码块使用缩进规则对齐。

9.if、else、else if、for、while、do等语句自占一行,执行语句不得紧跟其后。不论执行语句有多少都要加 { }。

if(varible1 < varible2){

varible1 = varible2;}

10.11.声明类的时候,public、protected、private关键字与分界符{} 对齐,这些部分的内容要进行缩进。

12.结构型的数组、多维的数组如果在定义时初始化,按照数组的矩阵结构分行书写。13.相关的赋值语句等号对齐。

14.在switch语句中,每一个case分支和default要用{ }括起来,{ }中的内容需要缩进。

15.不同逻辑程序块之间要使用空行分隔。16.一元操作符如“!”、“~”、“++”、“--”、“*”、“&”(地址运算符)等前后不加空格。“[]”、“.”、“->”这类操作符前后不加空格。

17.多元运算符和它们的操作数之间至少需要一个空格。18.关键字之后要留空格。(if、for、while等关键字之后应留一个空格再跟左括号‘(’,以突出关键字。)

19.函数名之后不要留空格。(函数名后紧跟左括号‘(’,以与关键字区别。)20.(’向后紧跟,‘)’、‘,’、‘;’向前紧跟,紧跟处不留空格。‘,’之后要留空格。‘;’不是行结束符号时其后要留空格。

21.长表达式(超过80列)要在低优先级操作符处拆分成新行,操作符放在新行之首(以便突出操作符)。拆分出的新行要进行适当的缩进,使排版整齐。

22.函数声明时,类型与名称不允许分行书写。

三、注释

1.一般情况下,源程序有效注释量必须在20%以上。2.注释符与注释内容之间要用一个空格进行分隔。

3.文件头部必须进行注释,包括:.h文件、.c文件、.cpp文件、.inc文件、.def文件、编译说明文件.cfg等。

4.函数头部应进行注释,列出:函数的目的/功能、输入参数、输出参数、返回值、访问和修改的表、修改信息等。

5.包含在{ }中代码块的结束处应加注释,便于阅读。特别是多分支、多重嵌套的条件语句或循环语句。

void Main(){

if(…){

… while(…)

{

} /* end of while(…)*/ …

} /* end of if(…)*/ // 指明是哪条语句结束 } /* end of void main()*/

// 指明函数的结束 // 指明该条while语句结束

6.保证代码和注释的一致性。修改代码同时修改相应的注释,不再有用的注释要删除。7.注释应与其描述的代码相近,对代码的注释应放在其上方或右方(对单条语句的注释)相邻位置,不可放在下面,如放于上方则需与其上面的代码用空行隔开。

8.全局变量要有详细的注释,包括对其功能、取值范围、访问信息及访问时注意事项等的说明。

9.注释与所描述内容进行同样的缩排。

10.对分支语句(条件分支、循环语句等)必须编写注释。11.尽量避免在注释中使用缩写,特别是不常用缩写。

四、命名规则

1.标识符要采用英文单词或其组合,便于记忆和阅读,切忌使用汉语拼音来命名。严格禁止使用连续的下划线,下划线也不能出现在标识符头或结尾(预编译开关除外)。

2.程序中不要出现仅靠大小写区分的相似的标识符。

3.用正确的反义词组命名具有互斥意义的变量或相反动作的函数等。

4.宏、常量名都要使用大写字母, 用下划线 ‘_’分割单词。预编译开关的定义使用下划线 ‘_’开始。

5.变量名长度应小于31个字符,以保持与ANSI C标准一致。不得取单个字符(如i、j、k等)作为变量名,但是局部循环变量除外。

6.程序中局部变量不要与全局变量重名。7.使用一致的前缀来区分变量的作用域。

g_

:全局变量 s_

:模块内静态变量

空:局部变量不加范围前缀

8.使用一致的小写类型指示符作为前缀来区分变量的类型。说明:常用变量类型前缀列表如下:

i

: int

f

: float d : double c

: char uc

: unsigned char 或 BYTE l : long p

: pointer b

: BOOL h : HANDLE w

: unsigned short 或 WORD dw : DWORD或 unsigned long a

:数组,array of TYPE str

:字符串 t :结构类型

9.完整的变量名应由前缀+变量名主体组成,变量名的主体应当使用“名词”或者“形容词+名词”,且首字母必须大写。

float g_fValue;10.函数名用大写字母开头的单词组合而成,且应当使用“动词”或者“动词+名词”(动宾词组)。

11.结构名、联合名、枚举名由前缀T_ 开头。事件名由前缀EV_ 开头。12.标识符前最好不加项目、产品、部门的标识。

五、变量常量与类型

1.定义全局变量时必须仔细分析,明确其含义、作用、取值范围及与其它全局变量间的关系。

2.明确全局变量与操作此全局变量的函数或过程的关系。3.一个变量有且只有一个功能,不能把一个变量用作多种用途。4.循环语句与判断语句中,不允许对其它变量进行计算与赋值。5.宏定义中如果包含表达式或变量,表达式和变量必须用小括号括起来。6.使用宏定义多行语句时, 必须使用 { } 把这些语句括起来。

建议:

 尽量构造仅有一个模块或函数可以修改、创建的全局变量,而其余有关模块或函数只能访问。

 对于全局变量通过统一的函数访问。

 尽量使用const说明常量数据,对于宏定义的常数,必须指出其类型。 最好不要在语句块内声明局部变量。

7.结构和联合必须被类型化。typedef struct {

char acName[NAME_SIZE];WORD wScore;} T_Student;

T_Student *ptStudent;

建议:

 使用严格形式定义的、可移植的数据类型,尽量不要使用与具体硬件或软件环境关系密切的变量。

 结构是针对一种事务的抽象,功能要单一,不要设计面面俱到的数据结构。 不同结构间的关系要尽量简单,若两个结构间关系较复杂、密切,那么应合为一个结构。

 结构中元素的个数应适中。若结构中元素个数过多可考虑依据某种原则把元素组成不同的子结构,以减少原结构中元素的个数。

 仔细设计结构中元素的布局与排列顺序,使结构容易理解、节省占用空间,并减少引起误用现象,对于结构中未用的位明确地给予保留。

 结构的设计要尽量考虑向前兼容和以后的版本升级,并为某些未来可能的应用保留余地(如预留一些空间等)。

 合理地设计数据并使用自定义数据类型,尽量减少没有必要的数据类型默认转换与强制转换。

 当声明数据结构时,必须考虑机器的字节顺序、使用的位域及字节对齐等问题。

六、表达式与语句

1.在表达式中使用括号,使表达式的运算顺序更清晰。

if(((iYear % 4 == 0)&&(iYear % 100!= 0))||(iYear % 400 == 0))2.避免表达式中的附加功能,不要编写太复杂的复合表达式。3.不可将浮点变量用“==”或“!=”与任何数字比较。

4.应当将指针变量用“==”或“!=”与NULL比较。

5.在switch语句中,每一个case分支必须使用break结尾,最后一个分支必须是default分支。

6.不可在for 循环体内修改循环变量,防止for 循环失去控制。

建议:

 循环嵌套次数不大于3次。

 do while语句和while语句仅使用一个条件。 当switch语句的分支比较多时,采用数据驱动方式。

如果循环体内存在逻辑判断,并且循环次数很大,宜将逻辑判断移到循环体的外面。

 for语句的循环控制变量的取值采用“半开半闭区间”写法。 在进行“==”比较时,将常量或常数放在“==”号的左边。

七、参数

1.如果函数没有参数,则用void填充。

void SetValue(int iWidth, int iHeight);float GetValue(void);2.如果参数是指针,且仅作输入用,则应在类型前加const。(防止该指针在函数体内被意外修改。)

3.当结构变量作为参数时,应传送结构的指针而不传送整个结构体,并且不得修改结构中的元素,用作输出时除外。

4.不要省略返回值的类型,如果函数没有返回值,那么应声明为void类型。5.对于有返回值的函数,每一个分支都必须有返回值。(为了保证对被调用函数返回值的判断,有返回值的函数中的每一个退出点都需要有返回值)

6.对输入参数的正确性和有效性进行检查。7.防止将函数的参数作为工作变量。

void SumData(int iNum, int *piData, int *piSum){

int iCount;

int iSumTmp;// 存储“和”的临时变量

iSumTmp = 0;

for(iCount = 0;iCount < iNum;iCount++)

{

iSumTmp += piData[iCount];}

*piSum = iSumTmp;} 反例:

void SumData(int iNum, int *piData, int *piSum){

int iCount;

*piSum = 0;

for(iCount = 0;iCount < iNum;iCount++){

*piSum += piData[iCount];// piSum成了工作变量,不好。} }

8.必须对所调用函数的错误返回值进行处理。(函数返回错误,往往是因为输入的参数不合法,或者此时系统已经出现了异常。如果不对错误返回值进行必要的处理,会导致错误的扩大,甚至导致系统的崩溃。)

八、可靠性

1.在程序编制之前,必须了解编译系统的内存分配方式,特别是编译系统对不同类型的变量的内存分配规则,如局部变量在何处分配、静态变量在何处分配等。

2.防止内存操作越界。

3.必须对动态申请的内存做有效性检查,并进行初始化;动态内存的释放必须和分配成对以防止内存泄漏,释放后内存指针置为NULL。

4.变量在使用前应初始化,防止未经初始化的变量被引用。5.指针类型变量必须初始化为NULL。6.指针不要进行复杂的逻辑或算术操作。

7.如果指针类型明确不会改变,应该强制为const类型的指针,以加强编译器的检查。8.减少指针和数据类型的强制类型转化。9.移位操作一定要确定类型。

10.对变量进行赋值时,必须对其值进行合法性检查,防止越界等现象发生。11.类中的属性应声明为private,用公有的函数访问。

12.在编写派生类的赋值函数时,注意不要忘记对基类的成员变量重新赋值。13.构造函数应完成简单有效的功能,不应完成复杂的运算和大量的内存管理。14.不要在栈中分配类的实例,也不要生成全局类实例。

15.正确处理拷贝构造函数与赋值函数。

16.过程/函数中申请的(为打开文件而使用的)文件句柄,在过程/函数退出之前要关闭,除非要把这个句柄传递给其它函数使用。

九、可测试性

1.在同一项目组或产品组内,为准备集成测试和系统联调,要有一套统一的调测开关及相应信息输出函数,并且要有详细的说明。统一的调试接口和输出函数由模块设计和测试人员根据项目特性统一制订,由项目系统人员统一纳入系统设计中。

2.在同一个项目组或产品组内,调测打印出的信息串要有统一的格式。信息串中应当包含所在的模块名(或源文件名)及行号等信息。

3.在编写代码之前,应预先设计好程序调试与测试的方法和手段,并设计好各种调测开关及相应测试代码(如打印函数等)。

十、断言与错误处理

1.整个软件系统应该采用统一的断言。如果系统不提供断言,则应该自己构造一个统一的断言供编程时使用。

2.使用断言捕捉不应该发生的非法情况。不要混淆非法情况与错误情况之间的区别,后者是必然存在的并且是一定要作出处理的。

3.指向指针的指针及更多级的指针必须逐级检查。4.对较复杂的断言加上明确的注释。

5.用断言保证没有定义的特性或功能不被使用。

6.用调测开关来切换软件的DEBUG版和RELEASE版,而不要同时存在RELEASE版本和DEBUG版本的不同源文件,以减少维护的难度。

7.正式软件产品中应把断言及其它调测代码去掉(即把有关的调测开关关掉)。8.在软件系统中设置与取消有关测试手段,不能对软件实现的功能等产生影响。9.用断言来检查程序正常运行时不应发生但在调测时有可能发生的非法情况。

第三篇:软件编程实习总结_工作总结

软件编程实习总结_工作总结

实习时间:3月1日———5月9日 实习地点:广州xx大学生实训基地 实训目标:

1.通过系统性的实训,熟练掌握java se、java ee知识体系,具备java开发经验;

2.了解企业软件开发流程规范,初步具备正确的软件开发编程思路,掌握软件开发的基本方法,养成规范化项目开发习惯; 3.以项目案例带动实训,以企业开发为基础,对参加实训学生进行项目分组管理,学生需按要求完成每天布置的项目案例,实训结束时必须按要求完成多个项目开发工作,通过案例练习、企业项目开发、评审,使学生初步具备软件开发的实战能力; 实习单位概述:xx科技以中关村科技园区为依托,在中国软件业发达城市——北京、上海、广州、深圳、大连、南京、武汉、杭州、西安、苏州、成都、太原等20大城市,建立了近40家培训中心,占地2万平米,年培训1万多名软件人才。已累计为ibm、微软、摩托罗拉、华为、中软、用友、yahoo、阿里巴巴、tom、新浪、搜狐、百度、联想、神州数码、大唐电信、亚信等知名it企业培养输送了7万多名中高级软件人才,目前xx全国拥有600多名员工,年产值近2亿元,是中国领先的中高端软件人才培训机构。xx科技目前提供的职业培训包括:外企软件开发工程师、软件测试工程师、oracle数据库管理员、unix系统

管理员、网络系统工程师。实习概况:

1.java语言简介。包括java的发展、java语言的特点、java应用程序的运行机制和环境、java的垃圾回收机制、java开发环境的安装和配置和java源程序的编译和运行等。

其中,配置java开发环境时,需要修改环境变量(先在系统变量中新建一个java_home的变量,将其值设置为jdk1.6.0的安装路径;然后修改path变量,在该变量值类加入路:%java_home%bin;%java_home%jrebin;接着再修改classpath变量,若没有手动加入,在其值类加入路径:.;最后利用javac-version测试java的版本);在编译和运行java源程序时,先使用javac *.java进行编译,再利用java *进行运行。

2.java基本语法。包括java的命名规范、注释、标识符、数据类型、变量、运算符、表达式、控制语句等。其中,java的命名规范包括:以字母(unicode)﹑“$”﹑“—”﹑为开头。第二个字符开始是字母(unicode)、数字、“$”﹑“—”,不限制长度,不能是 java的关键字,区分大小写和可以是中文;java的基本数据类型有八种:整型类型(byte,short,int,long)、浮点类型(float,double)、字符型(char)和布尔型(boolean);java的控制语句包括:选择语句(if-else,switch-case)、循环语句(for,do-while,while)和循环跳转语句(break结束整个

循,continue结束本次循环)。

3.mysql数据库基本指令。包括创建、查询、删除数据库和表,向表中添加、删除、更新数据和查询表,修改表的结构等。其中,列出数据库实例和表: show databases; show tables; 使用数据库实例: use databasename; 显示表中列的属性: desc tablename; 创建一张表:

create table tablename(属性及其数据类型); 查询数据:

select * from tablename(where id=); 添加数据:

insert into tablename(属性1,...)values(属性值1,...);删除数据:

delete from tablename(where id=); 更新数据:

update tablename set 字段名=„„,字段名

=„„(where id=); 表结构的修改,如增加一个字段格式:

alter table tablename add column(字段名,字段类型); 4.数组的介绍。包括数组的申明,初始化(静态和动态初始化),数组的访问、遍历和复制等。

5.string中一些api方法。如找到指定位置的字符charat(int index),求字符串的长度length(),字符串的连接concat、判断字符串是否以指定的字符结束engswith(‘c’)、判断两个字符串是否相等equal等。

6.接口的介绍。包括collection、list、hashmap等,以及这些接口的一些api的使用。7.类的封装和重载。

8.mysql数据库与myeclipse的连接,需要在工程中导

第四篇:软件编程学习心得

软件编程学习心得

随着计算机技术的发展和工作的需要,为了能够更好的维护公司生产管理系统;公司安排我们到北大青鸟APTECH进修。我们选择了时下最流行、发展速度较快的语言C#。C#学习共分三个阶段,目前我只学习了第一个阶段;现将我在北大青鸟学习第一阶段为期两个月的学习心得总结如下:

C#是一种新的面向对象的编程语言,专门用于.NET运行时。C#编译器只能生成受管制的代码,也可以使用.NET基类。C#语言自C/C++演变而来。但是,它具有简单、现代、完全面向对象和类型安全等诸多特性。下面就简单说说简单和现代其中两种特性。

1、简单

C#具有C++所没有的一个优势就是学习简单。该语言首要的目标就是简单。很多功能(还不如说是缺少了C++的一些功能)有助于C#全方位的简单。

在C#中,没有C++中流行的指针。默认地,您工作在受管理的代码中,在那里不允许如直接存取内存等不安全的操作。我想没有C++程序员可以声称,从没有使用指针访问过不属于他们的内存。

C#弃用其它操作符,名字空间、成员和引用仅使用单个操作符 “.”。现在一个程序员所需要理解的就是嵌套名字的注解了。

C#使用统一的类型系统。这种系统充许您把各种类型作为一个对象查看,它是一个原始类型还是一个full-blown 类。和其它编程语言相比,由于加框(boxing)和消框(unboxing)的机制,把简单类型当作对象处理并不能获得性能的改善。稍后将详细解释加框和消框,但基本上仅当需要时才使用对象访问简单类型这种技术。

2、现代

投入学习C#的努力是一笔大投资,因为C#是为编写NGWS 应用程序的主要语言而设计。很多用C++可以实现或者很费力实现的功能,在C#中不过是一部分基本的功能而已。根据应用程序的特殊需求,可以很容易地创建出新的一种数据类型。

指针不再是编程武器的一部分。运行时NGWS提供了一个垃圾收集器,负责C#程序中的内存管理。因内存和应用程序都受到管理,所以很必要增强类型安全,以确保应用的稳定性。

异常处理是C#的主要功能。C#的异常处理与C++的不同点在于它是交叉语言的(运行时的另一个功能)。在没有C#之前,您必须处理怪异的HRESULTs,但现在由于使用了基于异常的健壮的出错处理,这一切都结束了。

对于现代的应用程序,安全是首要的,C#也不会例外。它提供了元数据语法,用于声明下述NGWS安全模式的能力和许可。元数据是NGWS运行时的一个关键的概念。

通两个多月学习,我能够很好的掌握C#语言的基本语句、语法以及老师补充的一些要点;能够编写简单的应用程序,例如电子邮件的收发等,为接下来的第二、第三阶段学习打下了良好的基础。

第五篇:用友软件错误91问题汇总

[学习] 用友软件错误91问题汇总

用友软件, 汇总用友软件, 汇总

1.在总账中,查询管理费用时报“7-内存溢出”或“未设置对象变量,运行时91错误”。此问题请检查机器环境: 机器名是否含特殊字符或中文,登陆操作系统的操作员名是否含特殊字符或中文,其权限是否为超级管理员或高级用户.重新注册软件的所有组件,可使用通网站服务工具中的维护通2.0中的三十九号工具进行注册.清空系统临时文件夹,路径:C:Documents and SettingsAdministratorLocal

SettingsTemp 如问题未解决,请将账套引入到其它机器确定是否为数据问题.2.在总账记账时提示“运行时错误 91,未设置对象变量或With block 变量”。

总账中遇到这种错误,可能就是和计算机名称、登陆账户有关。计算机名称最好是全英文的,登陆账户也应该用英文名。查看登陆操作系统的用户具有什么权限,我们要求必须是超级用户以上的权限才可以。

3.客户在使用薪资统计查询时,出现“91号错误,未设置对象变量或With block 变量”同时个人工资统计查询表不可用,不能查询出

结果

此问题是因为组件丢失所致请重新注册一下组件或是重新安装一下软件

4.销售发票列表联查销售发票,出错“运行错误91”

开发已做出补丁,请上网下载相应版本的补丁。补丁路径:用友通10.2标准版:tongserver补丁包补丁包用友通10.2补丁包标准版2007-11-05星期一23335-23067用友通10.2工业版tongserver补丁包补丁包用友通10.2补丁包工业版2007-11-05星期一23335-

23067

5.查询账表时提示,运行时错误91,服务器为2000server可以正常登陆,客户端为xp出现此问题< /font>

使用服务工具中的维护通2.0中的工具三十九把客户端的组件重新注册一下,或卸载客户端软件,删除system32 fcomsql这个文件夹,然后再

重新安装软件。

6.凭证无法打印,预览时提示“运行时错误91,未设置变量或with block”。

先检查机器名是否为纯英文,不允许有._%等特殊字符;2.如果正常,则删除ZWSQLTemp.mdb文件,重新登录产品,文件保存位置:ZWSQLTemp.mdb默认路径(XXX:指系统登录帐户)操作系统路径Documents and SettingsXXXLocal SettingsTemp,此路径即系统环境变量中用户变量的Tmp变量值(参见系统环境参数章),如C:Documentsand SettingsAdministrator Local SettingsTemp;3.如果不行,请使用注册组件的工具,下载:http: //tong.ufida.com.cn/infomanage/qudao/ewebeditor/UploadFile/***.rar还解决不了,请重新安装

软件,卸载完软件后,删除c:windowsystem32下的ufcomsql文件夹,再装。

7.新装系统,安装用友通10.1plus2后,运行自定义转帐、期间损益结转、查询明细账时均报错“运行时错误91”。卸载软件,删除

ufcomsql后重装软件问题依旧。

用for %%s in(%windir%system32ufcomsql*.dll)do regsvr32.exe/s %%s

for %%s in(%windir%system32ufcomsql*.ocx)do regsvr32.exe/s %%s

注册后问题依旧。

此提示有这个几种情况

1、登录系统的操作员不够

2、登录系统的操作员是中文名

3、ZWSQLTemp.mdb出错,此文件存于操作系统路径Documents

and SettingsXXXLocal SettingsTemp,删除掉即可,所以建立一个新的只有英文字母的操作员来登录系统。

8.在查询明细账时提示“运行时错误91,未设置对象变量或withblock变量”。

请看一下机器名和登陆操作系统的用户名有没有特殊符号,或带有中文名,如有请将机器名修改为纯英文的,增加一个纯英文的操作系统用户。

如过没有,那请将软件进行卸载,删除system32下的ufcomsql文件夹,重新安装软件。

9.用户在安装用友通普及版10.2时,在进行打印设置时,打印预览凭证时,提示:“运行时错误91未设置对象变量或 WITH BLOCK变量”。此时自动退出.此后进入填制凭证时,刚又提示:“运行时错误429ACTIVEX.部件不能创建对象”.重新注册后,才可进行填制凭证界

面。已经试过重装软件.等一些操作,仍不能解决问题。

有控件没有注册上,重新注册下列文件:ufmoney.ocx,ufrtpm.ocx,uszzpub.dll, usnate.dll2.硬盘可能有坏道,换一个硬盘安装软件 3.重

装软件没删除干净,请重装前把安装目录和注册表以及c:windowsystem32ufcomsql 删除

10.点击如凭证打印,明细账查询,打印等查询和打印时都提示“运行时错误91,未设置对象变量或with& nbsp;block 变量”。请检查登陆操作系统的用户名是否为中文名,计算机名称是否带有特殊符号,或是以中文开头,这两者最好是全英文的。2.请将软件进行卸

载,然后停止mssqlserver服务(开始/运行/netstop mssqlserver),删除ufcomsql文件夹,再启动mssqlserver服务,重装软件。

11.在总账模块中,在进行月末结账时提示为"运行错误91"不能进行结账。

请检查一下机器名是否带有特殊符号或以数字开头,机器名最好是纯英文的,还有登陆操作系统的用户名也应该上以英文字母开头,不能带特

殊符号。

12.一客户有普及版总账.出现很多报错.能做凭证其他的什么都不能做.包括打印.提示"运行错误91未设置对象变量或 withblock变量".如果重新注册再进问题又发生变化了可能不能做凭证但能做其他的一项.不知是什么原因造成的.安装时没有任

何报错。

请按如下操作假如操作系统安装在c盘下 打开开始里的运行输入xp版本:regsvr32 c:windowssystem32ufcomsqlufmoney.ocx2000

版本:regsvr32 c:winntsystem32ufcomsqlufmoney.ocx提示成功。

13.固定资产减少时报错DAO-ADO对象模型,然后“运行时错误91”,“运行时错误440”

请检查机器名字是否为纯英文(不要有-号等特殊字符);请检查卡片项目中是否有特殊字符。

下载软件编程问题与错误的总结(精选)word格式文档
下载软件编程问题与错误的总结(精选).doc
将本文档下载到自己电脑,方便修改和收藏,请勿使用迅雷等下载。
点此处下载文档

文档为doc格式


声明:本文内容由互联网用户自发贡献自行上传,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任。如果您发现有涉嫌版权的内容,欢迎发送邮件至:645879355@qq.com 进行举报,并提供相关证据,工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。

相关范文推荐

    12级软件编程班家长会总结

    家长会总结 ——12级软件编程班 尊敬的各位家长: 你们好!首先,对各位家长的到来表示热烈的欢迎,相信今天在坐的各位家长都是很关心你的孩子在校的学习,生活情况的。因为在此次会......

    软件编程书籍清单

    软件编程书籍·推荐清单编程基础: 1、linux程序设计(第四版) --学习linux的基本程序设计2、数据结构(C++描述) --相关的C++版本数据结构均可,学习基本的链表、栈、队列等基础数据......

    java软件编程培训

    最好的Java软件编程培训西安雁塔尚学堂计算机学校创办于2009年,是陕西省培养计算机实用性人才的学校,学校以“程序运行人生,快乐魔力学堂”的口号名扬陕西,并且开创了V教学法等......

    软件编程学生毕业感言

    介绍下学习软件专业的同学是怎样写毕业感言的在家呆了一个月说是休息不如说是一种煎熬,上了四年大学却连个工作都找不到?我自己都有点不敢相信,想想在大学悠闲的日子真是后悔莫......

    软件编程实习心得体会(含五篇)

    软件编程是一个计算机专业的专业技能,在开展了专业培训工作之后,我们要学会总结。以下是小编整理的软件编程实训心得体会,欢迎大家阅读!软件编程实习心得体会1此次暑期实习的主......

    软件编程测试部工作总结范文大全

    软件编程测试部工作总结2010年已近尾声,回顾这一年里的工作收获颇多。年初一直在参与中行对公系统的测试工作,中国银行对公代客资金管理系统已2月份对公系统顺利投产。紧接着......

    三菱PLC编程软件简介

    三菱PLC编程软件简介 PLC的程序输入通过手持编程器、专用编程器或计算机完成。手持编程器体积小,携带方便,在现场调试时优越性强,但在程序输入、阅读、分析时较繁锁;而专用编程......

    软件编程本科生的自我介绍

    软件编程本科生的自我介绍在四年的学习生活中,我系统地掌握了开发与应用方面的技术,同时也对当今网络的发展有了深刻的认识。因此打下扎实的专业基础知识。在思想行为方面,我作......