我看一个纸板,看到一些表面贴装设备,一些电阻器,电容器和LED。这是否意味着因为这些板之一是视频卡,所以所有带有电阻器和电容器以及多层和走线的板都是视频卡?不。
这是另一个示例,此网页使用英语字母和英语单词。那么“纽约时报”网站是否成立,这是否使该网站成为“纽约时报”?不,他们只是共享相同的字母和语言,否则完全不同。
C是一种通用编程语言,它抽象了其下面的指令集。可用于裸机,可用于创建彼此不同且互不兼容的操作系统,可用于创建视频游戏等。所有这些都使用相同的基本C语言,一些常见的C函数和构造以及他们创建的特定于目标应用程序的函数调用。对于您提到的每个平台或其他平台,可能有人选择创建一组功能。就像到目前为止,包括我在内的少数人都给了您相同的答案,但是用不同的方式写了它。以100名程序员为例,将他们彼此隔离,并赋予他们解决特定问题的编程任务,而又不完全限制他们的编程自由,您将得到从1到100种不同的,彼此不兼容的解决方案,可能不是1个,而是几个通用主题,具体取决于他们的培训和经验,然后是一组可能对于每个人来说都是唯一的变量名和函数名。以您已经在讨论的相同的板为例,您会发现我当然有自己的C代码(与arduino函数)不兼容(与许多其他功能相同),并且与其他平台也不兼容。那就是裸机嵌入式编程的美,您不受任何限制,您不必生活在操作系统的标准库调用或guis有限的规则集之内,等等。可能不是1,而是几个通用主题,具体取决于它们的训练和经验,然后是一组可能对于每个人来说都是唯一的变量名和函数名。以您已经在讨论的相同的板为例,您会发现我当然有自己的C代码(与arduino函数)不兼容(与许多其他功能相同),并且与其他平台也不兼容。那就是裸机嵌入式编程的美,您不受任何限制,您不必生活在操作系统的标准库调用或guis有限的规则集之内,等等。可能不是1,而是几个通用主题,具体取决于它们的训练和经验,然后是一组可能对于每个人来说都是唯一的变量名和函数名。以您已经在讨论的相同的板为例,您会发现我当然有自己的C代码(与arduino函数)不兼容(与许多其他功能相同),并且与其他平台也不兼容。那就是裸机嵌入式编程的美,您不受任何限制,您不必生活在操作系统的标准库调用或guis有限的规则集之内,等等。以您已经在讨论的相同的板为例,您会发现我当然有自己的C代码(与arduino函数)不兼容(与许多其他功能相同),并且与其他平台也不兼容。那就是裸机嵌入式编程的美,您不受任何限制,您不必生活在操作系统的标准库调用或guis有限的规则集之内,等等。以您已经在讨论的相同的板为例,您会发现我当然有自己的C代码(与arduino函数)不兼容(与许多其他功能相同),并且与其他平台也不兼容。那就是裸机嵌入式编程的美,您不受任何限制,您不必生活在操作系统的标准库调用或guis有限的规则集之内,等等。
您可能会选择(但很大一部分人会这样做)在别人的沙箱中玩游戏,而不是自己构建,这意味着使用arduino gui及其C库。
您可以使用同一台PC并运行不同版本的Windows,Linux,BSD和Windows的其他清单,这些清单在某种程度上使用C,但其功能调用彼此不兼容。扩展到不同硬件,相同语言的相同硬件和不兼容的C可以具有兼容或不兼容的代码。语言决不会使它们兼容。
在这些嵌入式平台上使用C是因为这是常见的做法,没有其他语言可以替代C。新处理器的第一步当然是组装,然后几乎总是C,如果功能强大到足以运行操作系统(linux,bsd等),则可能是其他步骤。C是发明的,希望能解决跨平台移植代码的问题,并且只要您使用的操作系统是与C兼容的编译器,并且其代码可以在操作系统上运行,便可以处理标准C文件。操作和printf之类的东西。但是裸机则是另外一回事,没有操作系统,通常没有文件系统或显示的概念,但是按照惯例,很可能会有C编译器将其C转换为目标特定的汇编语言。