爱问知识人 爱问教育 医院库

C与C#有什么区别?

首页

C与C#有什么区别?

C与C#有什么区别?C是比较早的一种语言,C#是微软.NET阵营中的,两者有什么区别呢?

提交回答
好评回答
  • 2005-12-11 13:14:20
    语法基本没有区别,个人感觉首先c#不必对指针进行太多的研究,然后可移址性等,其它的区别相当大。可以说不是一个方向的。 
    C是面向过程的,C#是绝对的面向对象的,不是一个概念的东西
    对硬件的底层编程和对内存的管理的灵活性c是无人可及的.c#基本很少有c的风格了,比较象java了,完全没有了指针,引用

    v***

    2005-12-11 13:14:20

其他答案

    2005-12-11 16:20:42
  • fanchao180963 兄回答得有点牛头不对马嘴。有点可笑,楼上讲的是C#,非弄出个C+,且谈到C++去了。C#->C sharp.又不是C+(有这种表示吗)(C++)。    
              路过 ̄ ̄ ̄ ̄

    厅***

    2005-12-11 16:20:42

  • 2005-12-11 13:24:07
  •   c+没指针吗?但是为什么我的c+教材第六章就是指针啊?
    这个就是直接能够体现实际编程时区别的地方。 在WIN系列下。所有的WIN32 SDK提供的LIB都是以C的形式存在的。当然,C和C++同样都支持C,STDCALL,FASTCALL调用。
      为什么系统提供C编译器编译的LIB而不是C++编译的LIB呢?这里其实就是C和C++编译器不同的地方。   所有的函数名称只有在汇编编译器下才最清楚。因为经汇编编译器编译的函数不经过任何修饰。 C的编译器编译出来的函数名称如果在汇编编译器看来一个C调用将在函数名前家下划线(\'_\')。
      而一个STDCALL的函数将是 的形式。如FUNC(void)经过编译器后成为 一个FASTCALL调用的函数被编译成@ 顺便提一下。在WIN32的编译器里不再需要PASCALL调用。VC6已经取消了对PASCALL的支持。 光看C的编译还不够,看一下C++编译器是怎么干的。
      
      在缺省情况下。一个C++的函数经过C++编译器后编译出的函数名包括函数名,所属的类,参数类型,调用约定,返回类型。而且更要命的是这么多的信息,只有函数名和类名在编译后还依稀可见。其他就是一长串的ABCD字母,根本就是无法辨认其意义的。我们在VC手册里可以看到 。

    f***

    2005-12-11 13:24:07

  • 2005-12-11 12:58:22
  • c:面向过程,语法太麻烦c#:面向对象(跟java很像如果你对java了解估计你就会明白c&c#之间的区别了),是 framework的主力之一,它的代码运行是安全的,里面没有指针,像java一样有垃圾回收机制。

    K***

    2005-12-11 12:58:22

类似问题

换一换

相关推荐

正在加载...
最新问答 推荐信息 热门专题 热点推荐
  • 1-20
  • 21-40
  • 41-60
  • 61-80
  • 81-100
  • 101-120
  • 121-140
  • 141-160
  • 161-180
  • 181-200
  • 1-20
  • 21-40
  • 41-60
  • 61-80
  • 81-100
  • 101-120
  • 121-140
  • 141-160
  • 161-180
  • 181-200
  • 1-20
  • 21-40
  • 41-60
  • 61-80
  • 81-100
  • 101-120
  • 121-140
  • 141-160
  • 161-180
  • 181-200
  • 1-20
  • 21-40
  • 41-60
  • 61-80
  • 81-100
  • 101-120
  • 121-140
  • 141-160
  • 161-180
  • 181-200

热点检索

  • 1-20
  • 21-40
  • 41-60
  • 61-80
  • 81-100
  • 101-120
  • 121-140
  • 141-160
  • 161-180
  • 174-193
返回
顶部
帮助 意见
反馈

确定举报此问题

举报原因(必选):