知识标题关闭所有内容预览 | 展开所有内容预览
-
安装Visual studio2019时不进入安装界面而闪退的解决方案
[内容预览]
3745 | 2020-05-23
1、问题描述 情形1: 从微软官方网站下载的visual studio2019 WEB安装包,使用在线安装方式安装。启动后,提示下载,下载完后,验证,然后再下载,再验证.....,最后提示“无法下载安装文件。请检查Internet连接,然后重试”。当然网络连接是正常的。 情形2: 点击安装,启动下载提示界面,也提示安装包下载完毕,但卡在“正在验证”进行不下去,或者提示安装完毕,但不会进入到...
[阅读全文]
-
C#中只读(readonly)字段的使用
[内容预览]
1345 | 2018-10-22
顾名思义,只读字段,就是说在程序运行过程中,程序中可以读取这个字段的值,而不能修改它的值。在C#中可以使用readonly关键词来定义一个只读字段。 在C#中使用只读字段主要有以下几个要点: (1)只读字段可以在定义的同时赋值或者在类的构造方法中给其赋值; (2)除了构造方法外,其他地方不可以修改只读字段的值; (3)只读字段的属性只能有get访问器,不能有set,这是显而易见的; 只读...
[阅读全文]
-
使用C#实现顺序栈的算法
[内容预览]
632 | 2018-07-01
栈(Stack)是限定在表尾端进行插入或删除操作的线性表。因此,表尾具有特殊的含义,称之为栈顶(Top),另一端是固定的,称为栈底(Bottom)。不含任何数据元素的栈为空栈(Empty Stack)。 栈通常记为:S= (a1,a2,…,an),S是英文单词stack的第1个字母。栈中元素按a1,a2,a3,...,an的次序进栈,出栈的次序为栈顶元素。即出栈的次序与进栈相反,an第一个出栈,...
[阅读全文]
-
使用三元操作符求两个数的最大值
[内容预览]
989 | 2013-10-14
本案例演示了C#中三元运算符“?:"的使用方法。 ?:运算符是C#中唯一一个三元运算符,即其需要三个操作数参与运算;其格式为: 表达式1?表达式2:表达式3; 一般表达式1为逻辑表达式,当该表达式值为真时,整个表达式的最后运算结果为表达式2的值,否则为表达式3的值。 本案例通过求两个数的最大值来演示其具体用法。 源代码如下: using System; namespace Ti...
[阅读全文]
-
C#数据类型:decimal数据类型的使用
[内容预览]
1265 | 2013-09-28
本文目的是使读者掌握decimal数据类型的定义、赋值和初始化的方法。 C#中的decimal数据类型的数值后必须有后缀“M”或“m”,否则编译时将给出如下的错误信息: 错误 不能隐式地将 Double 类型转换为“decimal”类型;请使用“M”后缀创建此类型 造成这个问题的原因主要是,在C#中,小数默认以双精度类型(double)进行存储的,而默认情况下,double无法完成到deci...
[阅读全文]
-
[图文] C#控件之TextBox的使用方法
[内容预览]
27733 | 2013-07-19
1、TextBox控件简介 C#中的TextBox控件常用于在窗体中接收用户的输入或显示文本,利用该控件可以让用户输入文本、密码等信息,同时也可以控制用户输入内容的长度、类型等 下图中类型名称后的控件 即文本框控件。 2、TextBox控件的常用属性 (1)BackColor:设置背景色; (2)BorderStyle:设置TextBox边框的类型,为枚举值,其值有三种:None(没...
[阅读全文]
-
[图文] C#习题:Dog类的定义与使用
[内容预览]
985 | 2012-11-04
本习题要求创建一个Dog类,类中要包含Dog的年龄、体重和毛色三个字段,以及对三个字段访问的属性,并定义一个方法输出Dog的相关信息。同时,要对该类进行测试。 习题分析:本例主要是考察学生以下知识点: (1)类的定义; (2)类字段成员的定义; (3)类属性成员的定义; (4)类方法成员的定义; (5)类的实例化; (6)类成员的调用; 本文在给出具体的解决方法的同时,定义了枚举类...
[阅读全文]
-
使用.net提供的csc命令编译C#程序
[内容预览]
630 | 2012-10-22
visual studio集成开发环境可以大大提高我们的编程效率,但如果你没有安装这个集成开发环境或者喜欢在命令行下编辑编译程序的话,你可以使用其提供的CSC命令来编译C#程序。当然,前提你正确安装了Microsoft.Net Framework SDK。 下面介绍一下这个命令的具体使用方式。 首先,启动命令行程序,进入源程序文件所在的目录,敲入下面的命令: csc HelloWorld.c...
[阅读全文]
-
C#中的常量
[内容预览]
453 | 2012-10-21
常量是指在程序运行过程中,其值不能被改变的量,在C#语言中,其定义方法如下: const 数据类型 变量名 = 常量值; 即,常量使用const关键字定义,在定义的同时必须初始化。常量与变量不同,其必须使用类名调用而不能使用类的实例来调用,即其为静态的。 我们在编程时,有些量在整个程序运行过程中不允许改变,如圆周率π的值,我们就可以将其定义为常量: public const doub...
[阅读全文]
-
C#的标识符
[内容预览]
706 | 2012-10-21
标识符是用户用来定义变量、常量、类等名称的字符。在C#中,标识符主要分为关键字、类型名、变量名、常量名、方法名和命名空间的名称。C#中规定合法的标识符命名规则为: (1)标识符合法的字符为 :26个大小写字母,0-9之间的10个数字以及下划线; (2)开头字符只能是字母或者下划线,不能是数字; (3)下可以使用@作为开始字符。 C#在标识符的命名风格上主要有以下几种: (1)Pascal...
[阅读全文]
-
C#中三元操作符?:的使用
[内容预览]
666 | 2012-06-03
C#中三元操作符只有一个,即?:称之为条件操作符,其语法格式如下: expression1?expresson2:expression3; expression1一般为逻辑表达式,当其值为真时,则整个表达式的值为expression2的值,如果表达式1的值为假(false)的话,则整个表达式的值为表达式expression3的值。 从上面的叙述中,我们可以看出,它相当于一个if...el...
[阅读全文]
-
C#中抽象类与接口的区别
[内容预览]
406 | 2011-09-11
很多人在学习抽象类和接口时,弄不明白两者之间的区别,弄不明白的原因,它们之间有太多的相似性,那么本文着重介绍两者之间的区别以让大家弄清楚C#中抽象类和接口到底有什么区别,它们主要用在什么场合。 1、抽象类 抽象类是特殊的类,只是不能被实例化;除此以外,具有类的其他特性;重要的是抽象类可以包括抽象方法,这是普通类所不能的。抽象方法只能声明于抽象类中,且不包含任何实现,派生类必须覆盖它们。另外,抽...
[阅读全文]
-
System.Collections.Generic 命名空间
[内容预览]
371 | 2011-09-08
我们注意到在Visual Studio 2005中创建的应用程序都包含着System.Collections.Generic 命名空间,那么这个命名空间有什么作用呢? 实际上,System.Collections.Generic 命名空间是.NET Framework 2.0 版中是新增的一个命名空间,System.Collections.Generic 命名空间包含定义泛型集合的接口和类,泛型...
[阅读全文]
-
[图文] C#中的bool数据类型
[内容预览]
2113 | 2011-09-08
C#中的bool类型表示真和假的概念,其值只有两种:true 与 false。 该数据类型在内存中占1个字节。 C#中的bool类型与C语言中的“真”“假”还不一样,C#中的bool类型不能和整数1与0转换。 即试图使用0表示“假”或使用非0值表示“真”都是不允许的。 则下面的写法是错误的: bool blAccept; blAccept = 1; blAccept = 0; 而下...
[阅读全文]
-
C#中的注释
[内容预览]
513 | 2010-08-31
C#有两种常用注释形式: 1、多行注释(multiline comment) 这种类型的注释必须以/*开始,以*/结束。在这两个符号中间的任何东西都被看做注释,而编译器忽略其中的内容不进行编译。但要注意,这种注释不允许嵌套,即注释中出现这两个符号。 2、单行注释(single-line comment) 单行注释使用 //,这一行//后面的内容都被看做注释内容。 编程者常用多行注释来书写...
[阅读全文]
-
[图文] 如何去除字符串中间的空格
[内容预览]
2279 | 2010-05-08
使用Trim只能去除字符串前端和后端的空ge,那么字符串中间的空ge如何去掉呢?下面给出一个完整的程序: using System; using System.Collections.Generic; using System.Text; class TrimAll { string trimAllSpace(string str) { string temp = ""; ...
[阅读全文]
-
[图文] C#中的字符串类
[内容预览]
768 | 2010-05-08
在C#语言中,string 类型是引用类型,其表示零或更多个Unicode 字符组成的序列。string 是 .NET Framework 中 String 的别名。其定义方法如下: string s1="";//这是一个空字符串 string s2="hello,everyone!"; //非空字符串 可以使用"+"把两个字符串连接起来。如: string s3="中国"+" 北京"; ...
[阅读全文]
-
C#的装箱与拆箱
[内容预览]
1413 | 2010-05-08
装箱(boxing)和拆箱(unboxing)是.NET提出得新概念!我们知道C#的所有类型都是由基类System.Object派生来的。如果在声明这些数据类型的时候都在堆(HEAP)中分配内存,会造成极低的效率。 为了解决这个问题,.NET的值类型在栈中分配内存,而引用型是在堆中分配内存,初始化为null,引用类型是需要通过垃圾回收器来回收内存,而值类型超过其作用域,就会失效。 有时我们需要...
[阅读全文]
-
[图文] C#数据类型的转换
[内容预览]
632 | 2010-05-08
总体来看,C#数据类型的转换包括隐式转换和显示转换两种。隐式转换,即不同数据类型之间能自动完成的转换,无须人为干预,一般情况是由低精度的数据类型向高精度的数据类型转换。显示转换,即强制转换,必须人为地用一定方法完成的转换。我们先看看C#中的隐式转换。 1、隐式转换 我们用一个例子来说明一下: using System; class Class1 { static void Ma...
[阅读全文]
-
浅谈对C#命名的认识
[内容预览]
315 | 2010-05-08
1. 命名时单词的开头字符都要大写 如: public class StudentClass { private string StudentName; private char StudentSex; public string RetStudName() { return StudentName; } } 2. 命名时,第一个单...
[阅读全文]
-
C#中的常量
[内容预览]
437 | 2010-05-08
见名知义,就是在程序的运行过程中,其值不能被改变的量。声明方法只要在声明普通变量时,前面加上const关键字就可以了,但必须初始化,举个例子如下: const int a = 23; 这里的a就是常量,其值为23,在程序运行过程中不能改变了。如: a = 34; 这样的写法是错误的,将不能通过编译。 常量在程序设计过程中有什么用呢?我们可以想象一下,假设你的老板让你编写一个处理各种圆形、...
[阅读全文]
-
[图文] C#的结构类型
[内容预览]
866 | 2010-05-08
有时我们可能对同一事物使用多个不同的变量来描述,如果将其分开来,显得不够灵活。结构类型很好的解决了这个问题,它把多个不同的变量组织在一起。其定义方法如下: struct 结构名称 { 成员声明列表; } 成员可以包含构造函数,常数,字段,方法,属性,索引器,运算符和嵌套类型等。每个成员在声明的时候都采用如下的格式: 访问修饰符 类型 名称; 假设我们想描述一个点的位置和颜色,...
[阅读全文]
-
[图文] C#程序中的变量
[内容预览]
319 | 2010-05-08
本文讲解了C#变量的命名方法和具体使用方法,这是很基础的东西,但用得又是非常多的。 变量,从其名字中,我们就可以知道,是在程序运行过程中,其值可以被改变。于其它语言一样,C#变量在使用过程中也应该遵循一定的规则。 C#中的变量必须先定义后使用,这毫无疑问。 1.C#变量的命名规则 (1)开头字符必须是字母,下划线或@; (2)C#变量不能使用C#语言的保留字,库函数名称; (...
[阅读全文]
-
C#的引用类型
[内容预览]
369 | 2010-05-08
本篇文章粗略地说明了C#引用类型的种类和含义,如有对C#引用类型有疑问的可以参考一下,但对于引用类型的理解可能有误,希望高手能留言指教。 C#中的主要引用类型有:数组,类,接口和委托。即,这些数据类型在内存中不存储真正的值,而存储的是值的地址。 值类型变量直接把变量的值保存在堆栈中,引用类型的变量把实际数据的地址保存在堆栈中,而实际数据则保存在堆中。注意,堆和堆栈是两个不同的概念,在内存中的...
[阅读全文]
-
[图文] 第一个C#程序:hello world
[内容预览]
1021 | 2010-05-08
这篇文章以一个简单的Hello world 程序讲解了C#程序的基本结构和相关知识,希望大家能喜欢。 Hello World,就像一个婴儿刚刚来到这个世界上,开启了他的人生旅途。下面将使用大部分程序设计的开门程序Hello World来简单交待一下C#程序的格式与基础知识。 using System; //引入System命名空间 namespace HelloWorld ...
[阅读全文]
-
例说C# object类型
[内容预览]
4518 | 2010-05-08
这篇关于C#Object类型的文章最初写在我的个人博客了,这次把它粘在这里,构成C#基础知识的一部分,如果大家对C# object有什么新的认识,请留言。 object 类型在 .NET Framework 中是System.Object 的别名。在 C# 的统一类型系统中,所有类型(包括预定义类型、用户定义类型、引用类型和值类型)都是直接或间接从System.Object 继承的。所以,我们可...
[阅读全文]
-
[图文] C#控制台输出方法详解
[内容预览]
12223 | 2010-05-05
C#控制台输出有两种方法:Write()和WriteLine(),它们都是命名空间System中Console类的方法,且都具有多达18种或以上的重载形式,能够直接输出C#提供的所有基本数据类型。其中,Write()方法输出一个或多个值后不换行,即其后没有新行符;而WriteLine()同样是输出一个或多个值,但输出完后换行,即其后有一个新行符。 为了控制输出内容或文本的输出格式,这两种方法提...
[阅读全文]
-
[图文] C#常用操作符的使用详解
[内容预览]
3456 | 2010-03-12
C#的精彩世界还离不开其提供的丰富的操作符,按照操作数的个数,C#操作符可分为以下几类: 一元操作符 :++x,x++,--y,z-- 二元操作符:x+y,x-y,x*y 三元操作符:x=(x>a?x:a); 如果从操作符的作用来看,C#操作符可以分为赋值操作符,算术操作符,关系操作符,逻辑操作符,位操作符和其它操作符。 1.赋值操作符...
[阅读全文]
-
用C#实现选择法排序
[内容预览]
370 | 2010-01-31
导读:本文给出了使用C#实现选择发排序的算法 using System; namespace SelectionSorter { public class SelectionSorter { private int min; public void Sort(int [] list) { for(int i = 0; i < list.Len...
[阅读全文]
-
用C#实现冒泡法排序
[内容预览]
512 | 2010-01-31
导读:本文给出了使用C#进行冒泡法排序的源代码 using System; namespace BubbleSorter { public class BubbleSorter { public void Sort(int [] list) { int i, j, temp; bool done = false; j = 1; ...
[阅读全文]