两种语言是有相当多的共同点的,不过在0基础的情况下还是建议有C的基础比较好。
C#隐藏了指标(但并不是不能使用),而指标的思想对于任何程式设计师都是必要的。
学习C语言会让的头脑中内建指标,记忆体分配,递回,演算法设计等重要思想,这些思想使得学习任何语言都非常方便。
C#和C的语法几乎是互通的,只不过C#是完全面向物件的,C是面向过程的。
C#的很多内容都可以用C去对映, 比如委托类似于指向函式的指标, 结构体相当于typedef,类相当于type*, 介面则是一个全新的概念了,这体现著一定的程式设计思想的转换。
当然从头开始学C#也没问题,如果的理解能力够强的话...,或者学到一半回头看看C或C++,也能有助于对C#的理解。