c#语言 订阅
C语言是一门面向过程的、抽象化的通用程序设计语言,广泛应用于底层开发。C语言能以简易的方式编译、处理低级存储器。C语言是仅产生少量的机器语言以及不需要任何运行环境支持便能运行的高效率程序设计语言。尽管C语言提供了许多低级处理的功能,但仍然保持着跨平台的特性,以一个标准规格写出的C语言程序可在包括类似嵌入式处理器以及超级计算机等作业平台的许多计算机平台上进行编译。 [1] 展开全文
C语言是一门面向过程的、抽象化的通用程序设计语言,广泛应用于底层开发。C语言能以简易的方式编译、处理低级存储器。C语言是仅产生少量的机器语言以及不需要任何运行环境支持便能运行的高效率程序设计语言。尽管C语言提供了许多低级处理的功能,但仍然保持着跨平台的特性,以一个标准规格写出的C语言程序可在包括类似嵌入式处理器以及超级计算机等作业平台的许多计算机平台上进行编译。 [1]
信息
类    别
程序设计语言
影响语言
C++、C#、D、Java、JavaScript、ObjectPHP等
创始时间
1972年
主要编译器
Visual C++、Clang、GCC、Turbo C等
中文名
C语言
创始人
Dennis MacAlistair Ritchie
发    源
BCPL语言
外文名
C Programming Language
c语言简介
C语言是一门面向过程的计算机编程语言,与C++、Java等面向对象编程语言有所不同。C语言的设计目标是提供一种能以简易的方式编译、处理低级存储器、仅产生少量的机器码以及不需要任何运行环境支持便能运行的编程语言。C语言描述问题比汇编语言迅速、工作量小、可读性好、易于调试、修改和移植,而代码质量与汇编语言相当。C语言一般只比汇编语言代码生成的目标程序效率低10%~20%。因此,C语言可以编写系统软件。 [2]  当前阶段,在编程领域中,C语言的运用非常之多,它兼顾了高级语言和汇编语言的优点,相较于其它编程语言具有较大优势。计算机系统设计以及应用程序编写是C语言应用的两大领域。同时,C语言的普适较强,在许多计算机操作系统中都能够得到适用,且效率显著。 [3]  冯.诺依曼在1945年提出了现代计算机的若干思想,被后人称为冯.诺依曼思想,这是计算机发展史上的里程碑。自1945 年至今大多采用其结构,因此冯.诺依曼被称为计算机之父。他的体系结构计算机由运算器、控制器、存储器、输入设备、输出设备五大部件构成。 C语言拥有一套完整的理论体系经过了漫长的发展历史,在编程语言中具有举足轻重的地位。 [4] 
收起全文
精华内容
参与话题
问答
  • C# 语言和 .NET Framework 介绍

    千次阅读 2015-08-14 16:27:32
    C# 语言和 .NET Framework 介绍

    C# 是一种简洁、类型安全的面向对象的语言,开发人员可以使用它来构建在 .NET Framework 上运行的各种安全、可靠的应用程序。 您可以使用 C# 来创建 Windows 客户端应用程序、XML Web services、分布式组件、客户端/服务器应用程序、数据库应用程序等等。 Visual C# 提供了高级代码编辑器、方便的用户界面设计器、集成调试器和许多其他工具,使您可以更轻松地在 C# 语言和 .NET Framework 的基础上开发应用程序。

    C#语言

    C# 语法表现力强,而且简单易学。 C# 的大括号语法使任何熟悉 C、C++ 或 Java 的人都可以立即上手。 了解上述任何一种语言的开发人员通常在很短的时间内就可以开始使用 C# 高效地进行工作。 C# 语法简化了 C++ 的诸多复杂性,并提供了很多强大的功能,例如可为 null 的值类型、枚举、委托、lambda 表达式和直接内存存取,这些都是 Java 所不具备的。 C# 支持泛型方法和类型,从而提供了更出色的类型安全和性能。C# 还提供了迭代器,允许集合类的实施者定义自定义的迭代行为,以便容易被客户端代码使用。 语言集成查询 (LINQ) 表达式使强类型查询成为了一流的语言构造。

    作为一种面向对象的语言,C# 支持封装、继承和多态性的概念。 所有的变量和方法,包括 Main 方法(应用程序的入口点),都封装在类定义中。 类可能直接从一个父类继承,但它可以实现任意数量的接口。 重写父类中的虚方法的各种方法要求 override 关键字作为一种避免意外重定义的方式。 在 C# 中,结构类似于一个轻量类;它是一种堆栈分配的类型,可以实现接口,但不支持继承。

    除了这些基本的面向对象的原理之外,C# 还通过几种创新的语言构造简化了软件组件的开发,这些结构包括:

    • 封装的方法签名(称为“委托”),它实现了类型安全的事件通知。

    • 属性,充当私有成员变量的访问器。

    • 特性,提供关于运行时类型的声明性元数据。

    • 内联 XML 文档注释。

    • 语言集成查询 (LINQ),提供了跨各种数据源的内置查询功能。

    在 C# 中,如果必须与其他 Windows 软件(如 COM 对象或本机 Win32 DLL)交互,则可以通过一个称为“互操作”的过程来实现。互操作使 C# 程序能够完成本机 C++ 应用程序可以完成的几乎任何任务。 在直接内存存取必不可少的情况下,C# 甚至支持指针和“不安全”代码的概念。

    C# 的生成过程比 C 和 C++ 简单,比 Java 更为灵活。 没有单独的头文件,也不要求按照特定顺序声明方法和类型。C# 源文件可以定义任意数量的类、结构、接口和事件。

     .NET Framework 平台体系结构

    C# 程序在 .NET Framework 上运行,它是 Windows 的一个不可或缺的组件,包括一个称为公共语言运行时 (CLR) 的虚拟执行系统和一组统一的类库。 CLR 是 Microsoft 对 Common Language Infrastructure (CLI) 的商业实现。CLI 是一种国际标准,是用于创建语言和库在其中无缝协同工作的执行和开发环境的基础。

    用 C# 编写的源代码被编译为一种符合 CLI 规范的中间语言 (IL)。 IL 代码与资源(例如位图和字符串)一起作为一种称为程序集的可执行文件存储在磁盘上,通常具有的扩展名为 .exe 或 .dll。 程序集包含清单,它提供有关程序集的类型、版本、区域性和安全要求等信息。

    执行 C# 程序时,程序集将加载到 CLR 中,这可能会根据清单中的信息执行不同的操作。 然后,如果符合安全要求,CLR 就会执行实时 (JIT) 编译以将 IL 代码转换为本机机器指令。 CLR 还提供与自动垃圾回收、异常处理和资源管理有关的其他服务。 由 CLR 执行的代码有时称为“托管代码”,它与编译为面向特定系统的本机机器语言的“非托管代码”相对应。 下图阐释了 C# 源代码文件、.NET Framework 类库、程序集和 CLR 的编译时与运行时的关系。


    语言互操作性是 .NET Framework 的一项主要功能。 由于 C# 编译器生成的 IL 代码符合公共类型规范 (CTS),因此从 C# 生成的 IL 代码可以与从 Visual Basic、Visual C++ 的 .NET 版本或者其他 20 多种符合 CTS 的语言中的任何一种生成的代码进行交互。 单一程序集可能包含用不同 .NET 语言编写的多个模块,并且类型可以相互引用,就像它们是用同一种语言编写的。

    除了运行时服务之外,.NET Framework 还包含一个由 4000 多个类组成的内容详尽的库,这些类被组织为命名空间,为从文件输入和输出、字符串操作、XML 分析到 Windows 窗体控件的所有内容提供了各种有用的功能。 典型的 C# 应用程序使用 .NET Framework 类库广泛地处理常见的“日常”任务。

    展开全文
  • C#语言知识汇总

    千次阅读 热门讨论 2013-05-16 17:55:09
    这段时间一直再看Asp.net的相关视频,通过天轰穿的视频,还有北大青鸟的视频,感受到了.net平台的功能强大,而.net平台的主打语言就是C#,这里先简单总结一下,C#语言的相关知识,再总结Asp.net平台上的各种知识。...

        这段时间一直再看Asp.net的相关视频,通过天轰穿的视频,还有北大青鸟的视频,感受到了.net平台的功能强大,而.net平台的主打语言就是C#,这里先简单总结一下,C#语言的相关知识,再总结Asp.net平台上的各种知识。

         

        先看一下我总结的总体思路:



      下边我从这个四个方面简单总结:


        一,基础知识:这是很多语言都有的,可以通过比较的方式来学习,例如与VB的比较,因为任何一门语言都有这些东西,他们的相同点很多,但也有细微的差别:

           这是比较多大的一节,虽然基础,但是感觉还是总结一下,方便一下查看:


         1,数据类型:



         (1),值类型:

              整数类型

     

    数据类型

    说明

    取值范围

    对应于System程序集中的结构

    sbyte

    有符号8位整数

    -128-127

    SByte

    byte

    无符号8位整数

    0-255

    Byte

    short

    有符号16位整数

    -32768-32767

    Int16

    ushort

    无符号16位整数

    0-65535

    UInt16

    Int

    有符号32位整数

    -2147489648-2147483647

    Int32

    uint

    无符号32位整数

    0-42994967295

    UInt32

    long

    有符号64位整数

    -263-263

    Int64

    ulong

    无符号64位整数

    0-264

    UInt64


         字符类型

              C#中采用Unicode字符集来表示字符类型。


         实数类型

     

    数据类型

    说明

    取值范围

    float

    32位单精度实数

    1.5*10-45-3.4*1038

    double

    64位双精度实数

    5.0*10-324-1.7*10308

    demcimal

    128位十进制实数

    1.0*10-28-7.9*1028


         布尔(bool)类型

        取值只能是ture或者false,bool类型对应于.NET类库中的System.Boolean结构。它在计算机中占4个字节,即32位存储空间。


          结构类型

            把一系列相关的信息组织成为一个单一实体的过程,这就是创建一个结构的过程。

    structperson

    {

    string m_name; //姓名

    int m_age; //年龄

    string m_sex; //性别

    }

          枚举类型

    主要用于表示一个逻辑相关联的项和组合。使用关键字enum来定义。

    enumWeekday

    {

    Sunday,Monday,Tuesday,Wednesday,Thursday,Friday,Saturday

    }

     


        (2),引用类型:

         Object类型::其他类型都是直接或者间接从Object继承的,可以将任何类型的值赋给Object类型的变量。

         String类型:表示Unicode字符的字符串。其内容是不可变的。

    例子:

         string a ="hello";

         string  c="h";

         c=c+"ello";

         console.writeline(a==c);

        console.writeline((object)a==(object)c);

      这是的返回值为True False,这就是说起内容相同,但是引用的字符串实例不同。

     类(class)

    类是一组具有相同数据结构和相同操作的对象集合。类和结构之间的根本区别在于:结构是值类型,而类是引用类型。对于值类型,每个变量直接包含自身的所有数据,每创建一个变量,就在内存中开辟一块区域;而对于引用类型,每个变量只存储对目标存储数据的引用,每创建一个变量,就增加一个指向目标数据的指针。

    接口(interface)

    应用程序之间要相互调用,就必须事先达成一个协议,被调用的一方在协议中对自己所能提供的服务进行描述。在C#中,这个协议就是接口。接口定义中对方法的声明,既不包括访问限制修饰符,也不包括方法的执行代码。如果某个类继承了一个接口,那么它就要实现该接口所定义的服务。也就是实现接口中的方法。

    委托(delegate

    委托用语封装某个方法的调用过程。

    委托的使用过程分为3步:

    1.定义 delegate void HelloDelegate();

    2.实例化HelloDelegate hd = new HelloDelegate(p1.Say); //p1.Say调用的方法

    3.调用 hd();


    2,数据类型转换:




    3,运算符:

    (1),赋值运算符:


    (2),比较运算符:



    (3),运算符优先级:



    (4),运算符汇总:




      二,语句控制汇总:这是将上边基础知识串联起来的关键:





      三,数组与集合:




    下边把两个例子补上:

    第一个数组的例子:


    class Program    {
            static void Main(string[] args)
            {
                //声明一个三维数组
                int[, ,] arr3;
                //初始化该三维数组
                arr3 = new int[,,] { { { 1, 2, 3 } }, { { 4, 5, 6 } } };
                //使用Foreach语句遍历数组并输出
                foreach (int i in arr3)
                {
                    Console.WriteLine(i);
                }
    
            }
        }
    


    第二个集合的例子:


    class Program
        {
            static void Main(string[] args)
            {
                //实例化一个ArrayList对象
                ArrayList arrlist = new ArrayList();
              //使用Add方法向ArrayList中添加元素,将元素添加到ArrayList对象的末尾
                arrlist.Add("苹果");
                arrlist.Add("香蕉");
                arrlist.Add("葡萄");
                foreach (int n in new int[3] { 0, 1, 2 })
                {
                    arrlist.Add(n);
                }
                //移除值为0的第一个元素
                arrlist.Remove(0);
                //移除当前索引为3的元素,即第4个元素
                arrlist.RemoveAt (3);
                //在指定索引处添加一个元素
                arrlist.Insert(1, "apple");
                //遍历Arrlist,并输出所有元素
                for(int i =0;i<arrlist .Count ;i++)
                {
                    Console.WriteLine(arrlist[i].ToString());
                }
            }
        }
    

    对应输入信息:



      四,C#面向对象编程,我把我以前写过的两篇博客放在这里,通过一个有趣的例子很好的把编程里边的概念进行了学习。

    C# VS面向对象编程(一)    C# VS面向对象编程(二)



    综上为C#知识的简单总结,下篇博客将开始总结ASP.NET上的相关知识!


    展开全文
  • C#语言粗浅认识和C#语言与Java的区别

    千次阅读 2006-10-24 23:33:00
    C#语言是一门出现最晚,最新的软件开发语言,C#是为.NET量身定做的,也是依靠.NET Framework的支持,因此C#在.NET上运行的速度是最快的.现在的软件开发语言有很多,怎么样才算是一个好的语言呢?看一门语言是否是一门好...

    C#语言是一门出现最晚,最新的软件开发语言,C#是为.NET量身定

    做的,也是依靠.NET Framework的支持,因此C#在.NET上运行的速

    度是最快的.

    现在的软件开发语言有很多,怎么样才算是一个好的语言呢?

    看一门语言是否是一门好语言我认为是从以下几个方面来看:

        1.开发效率

        2.可维护性

        3.可移植性

        4.健壮性

        5.可重用性.

    下面我就这几方面用C#语言和JAVA 语言进行对比

    1.开发效率:  JAVA运行速度慢那是大家都知道的了,而C#是运行在.NET平台上的,

             其效率是高过JAVA 的

    2.可维护性:  说道可维护性,可以说C#和JAVA 是水平相当哇.

    3.可移植性:  JAVA语言最著名的就是可以跨平台,而C#现在可以说移植性这方面是暂

                          时低于JAVA 的,但是也可能是暂时哦.

    4.健壮性:     JAVA语言的健壮性是非常高的, 它在任何可以出现异常的地方都强制的

                         try    catch 抛出异常,而C#只有一种运行异常,但是够灵活,可以自由运用,   

                       不过就健壮性来说,低于JAVA .

    5.可重用性: C#语言是基于.NET平台上的一种语言,而C#所编写的代码可以被.NET平

                        台支持的多种语言使用,因此它的   可重用性当然是高过JAVA 拉.

    以上是小菜鸟初初学习C#,对以上问题还理解的不够透彻,请各位大师多多指点,3Q3Q.

     

     

     

     

     

     

     

    展开全文
  • 初级学软件之C#语言

    千人学习 2016-12-17 17:46:55
    主讲内容: 第一讲 Hello World 实例(完结) 第二讲 面向对象的实例(完结) 第三讲 变量(完结) 第四讲 常量(完结) 第五讲 数据类型(完结) 第六讲 运算符(完结) 第七讲 判断语句(完结) ...等19讲
  • C#语言 vs java语言

    千次阅读 热门讨论 2008-10-22 20:47:00
    搞了6+年的java开发,现在看C#语法的书籍,这才刚刚发现,原来C#语言比java语言难学多了,以下从几个角度去比较c#和java语言,来一次C# VS Java或者说java vs c# 1.C#从C++继承过来的东西更多一些,比如操作符重载...

    搞了6+年的java开发,现在看C#语法的书籍,这才刚刚发现,原来C#语言比java语言难学多了,以下从几个角度去比较c#和java语言,来一次C# VS Java或者说java vs c#

     

    1.C#从C++继承过来的东西更多一些,比如操作符重载,这些在java语言中是不存在的。

    2.C#的属性访问器,在java中不用搞的那么复杂,pojo就够用了。

    3.C#中有迭代器,yield语句这玩艺还真搞不懂是啥,虽然我用过不下5种程序设计语言做过项目,但是以前从来没听说过这东西。

    4.C#索引器,一个看起来挺好的东东,java中要实现同样的效果可能只能通过方法来实现了。

    5.C#中可以直接使用指针,java中要用jni去做

     

     

    展开全文
  • 部分参考中国大学生mooc网 慕课《c#程序设计》(唐大仕)第三讲面向对象的c#语言 应用实例–银行系统改进部分: 继承了Bank和Acccount及Atm类,并在Accout里增加debit字段(信用额度),使DebitBank和debitAtm支持...
  • C#语言基础理解

    千次阅读 2013-02-25 08:08:14
    学习c#视频有几天了,看完其语言基础之后,我对c#语言基础做了一个总结,来巩固所记的知识,同时希望能给你帮助。  最近一直在看c#视频,开始时看不懂,后来找师傅讨论了一下,自己重新看是有感觉,所以又重新开始...
  • 【课程特色】 1、课程设计循序渐进、讲解细致、通俗易懂、非常适合自主学习 2、教学过程实例丰富、强调技术关键点、并且分析透彻 3、物美价廉:本着知识共享、帮助更多有需求者原则,毫无保留,不另外设置VIP...
  • C#语言规范

    千次阅读 2004-11-06 07:16:00
    听说有个《C#语言规范》的手册,就去百度上搜了下看。刚才偶然翻起vs安装文件夹,发现在Microsoft Visual Studio .NET 2003/Vc7/2052的文夹下有这个手册的中文版! 真是搞笑,现在想想用vs三个多月了,怎么都没发现...
  • 利用C#语言实现小闹钟

    千次阅读 2016-11-13 12:04:38
    本图文主要是15级团队学习成果的汇报“ 利用C#语言实现小闹钟”。
  • Jave语言和C#语言

    2011-08-14 20:38:43
    Java语言与其他语言的区别 1.Java不支持指针,因为指针是C++程序中许多很难处理的错误源,在Java中,对象总是通过引用来处理 2.Java不支持运算符重载 3.Java完全是面向对象 Java与C#的比较 1.Java与C# 有着...
  • C#语言简介

    2018-04-22 10:49:36
    历史: C-&gt;C++-&gt;Java-&gt;C# C语言是60年代开始的,现在用处还很广泛,但是C语言不是面向对象的...由于版权的问题,后来2001年微软推出了C#语言C#语言早起和JAVA语言很相似,可以说是继承了J...
  • C# 语言规范

    千次阅读 2008-07-18 08:21:00
    C# 语言规范的 1.2 和 2.0 版是关于 C# 语法的权威资料。它们包含该语言各个方面的详细信息,包括 Visual C# 产品文档未涉及的许多语法点。 1.2 规范讨论了在 Visual C# 2005 推出之前为该语言添加的功能,而 2.0 ...
  • C#语言要素

    2014-09-26 10:54:37
    自从开始搞Unity,重新复习了C#相关书籍,记录下学到的要点
  • C#语言基础

    千次阅读 2007-09-04 12:22:00
    C#语言基础从语言的发展历史上来说,C语言一直是其中的主线。C语言的出现对程序员来说意义是非常重大的。在没有C语言的日子里,程序员们整天都在用机器语言及汇编语言来编写一些繁琐而又难懂的程序。那时候编程序是...
  • C#语言的几个层次

    万次阅读 热门讨论 2008-12-11 17:17:00
    作者: 李建忠接到一位前不久C#培训学员的来信,这位学员虽然以前功底欠缺,但学习劲头很足,在培训中成长很快。即便基本吃透《.NET框架(修订版)》还嫌不够过瘾,一心要成为高手中的高手。来信的目的是希望我来...
  • C#高级编程之C#语言

    千次阅读 2016-08-02 19:15:01
     C#是一种相当新的编程语言C#的重要性体现在以下两个方面:  它是专门为与Microsoft的.NET Framework一起使用而设计的(.NET Framework是一个功能非常丰富的平台,可开发、部署和执行分布式应用程序)。  它是...
  • 主要记录如何在Visual Studio中用C#语言使用RabbitMQ机制进行数据的接收
  • C#语言的概述

    万次阅读 2016-11-17 16:15:46
    C#开发概述,以及VisualStudio 2015专业版下载安装
  • Windows 10 选择“开始” 并滚动到字母“V” 。 展开“Visual Studio 2019” 文件夹。 ... 选择“VS 2019 开发人员命令提示” (或者你想使用的命令提示符)。... 或者,你可以首先在任务栏的搜索框中键入命令...
  • 自学C#语言基础

    千次阅读 2018-09-09 18:39:31
    自学C#语言基础 ** 所需要的开发工具: Vsiual studio 2015 1.C#是什么? C#是微软公司推出的一种语法简洁,类型安全的面向对象的编程语言。开发人员可以通过它编写在.NET Framework 上运行的各种安全可靠的应用...
  • C#语言的特点

    千次阅读 2018-10-12 14:49:07
    C#语言编写的源程序--------(通过C#语言编译器)------&gt;中间语言(MicroSoft Intermediate Language,简称MSIL)代码--------- -----(通过语言运行环境CLR中的即时编译器JIT)---------&gt;CPU可...
  • C#forUnity快速入门-C#语言入门

    千次阅读 多人点赞 2016-08-07 12:06:23
    C# for Unity 编程语言快速入门教程(连载1)
  • C#语言编译过程

    千次阅读 2018-06-06 14:28:25
    将源代码编译成托管模块我们先来了解一个概念公共语言运行时(Common...可用任意支持CLR的语言C#、VB等)创建源代码文件,然后用对应的编译器检查语法和分析源代码,最后生成托管模块(PE32文件),托管模块包括中...
  • C#语言学习总结

    千次阅读 2012-09-18 19:48:09
    C#语言学习总结 对于没有任何计算机基础的人来说什么是C#语言就像你拿着捡来一片破布问程序员是什么材质一样令人费解!要想了解C#(sharp)首先让我教你点基础,  曾经有个外语系的女童鞋和我聊天时聊到这语言 她:...
  • 下面列出了在以前版本的 C# 语言和 Visual Studio.NET 中引入的主要功能。 1、C# 1.0 特性----第1个版本,编程语言最基础的特性,对应于Visual Studio .NET 2002 Classes:面向对象特性,支持类类型 Structs:...
  • C#语言切换例程

    千次阅读 2017-04-12 16:37:49
    C#语言切换例程,很简单的实现

空空如也

1 2 3 4 5 ... 20
收藏数 63,650
精华内容 25,460
关键字:

c#语言