mqttgo语言 mqttdemo( 四 )


return -1;
}
if (fh == NULL)
{
printf("[%s, line %d] Failed to open the configuration file '%s' Abort!", __FILE__, __LINE__, yaml_file);
return -1;
}
memset(currentkey, 0, sizeof(currentkey));
/* Set input file */
yaml_parser_set_input_file(parser, fh);
while(!done)
{
if (!yaml_parser_parse(parser, event))
{
/* Useful YAML vars: parser.context_mark.line+1, parser.context_mark.column+1, parser.problem, parser.problem_mark.line+1, parser.problem_mark.column+1 */
printf( "[%s, line %d] libyam parse error at line %ld in '%s'", __FILE__, __LINE__, parser.problem_mark.line+1, yaml_file);
}
if ( event.type == YAML_DOCUMENT_START_EVENT )
{
//yaml file first line is version
//%YAML 1.1
//---
yaml_version_directive_t *ver = event.data.document_start.version_directive;
if ( ver == NULL )
{
printf( "[%s, line %d] Invalid configuration file. Configuration must start with "%%YAML 1.1"", __FILE__, __LINE__);
}
int major = ver-major;
int minor = ver-minor;
if (! (major == YAML_VERSION_MAJORminor == YAML_VERSION_MINOR) )
{
printf( "[%s, line %d] Configuration has a invalid YAML version. Must be 1.1 or above", __FILE__, __LINE__);
return -1;
}
}
else if ( event.type == YAML_STREAM_END_EVENT )
{
done = true;
}
else if ( event.type == YAML_MAPPING_END_EVENT )
{
sub_type = 0;
}
else if ( event.type == YAML_SCALAR_EVENT )
{
getvalue(event,configs);
}
}
return 0;
}
int main(int argc, char *argv[]){
pKeyValue pconfig=webrtcconfig[0];
Load_YAML_Config("../../etc/kvmagent.yml",pconfig);
printConfig(config);
freeConfig(config);
}
web 物联网用什么开发物联网中最常用的编程语言,即Java,C,C ++ , Python,JavaScript和Go 。
Java:物联网技术最流行的编程语言
Java有多个应用领域,从后端编程到Android的移动应用 。根据 Eclipse基金会执行的2017年物联网开发者调查,Java首次提供了用于物联网开发的编程语言列表,专门用于网关和云 。
使用Java进行物联网开发的一个主要好处是便携性 。Java没有任何硬件限制 , 这意味着您可以在计算机上编写和调试Java代码,并将其部署到几乎任何运行Java虚拟机的设备上 。出于这个原因,许多公司选择聘请Java开发人员进行物联网项目 。
C:嵌入式设备的关键编程语言
C编程语言接下来成为物联网IoT堆栈最喜欢的语言 。然而,根据Eclipse基金会的说法,它被认为是受限设备开发的领先技术 。
该编程语言提供对低级硬件API的直接访问 。由于其与机器语言的相似性,C非常快速且灵活,使其成为处理能力有限的物联网系统的完美选择 。
C ++:Linux的第一语言
与其前身C一样,C ++已广泛用于嵌入式系统开发 。但是,C ++的主要优势在于处理能力,在任务更加复杂时使其成为C的有用替代方案 。
C ++最适合编写硬件特定的代码 。它可与Linux,第一大物联网技术操作系统配合使用 。但是 , 与Java相比,它具有有限的可移植性 。
Python:面向数据的物联网系统的解决方案
作为最受欢迎的网络编程语言之一,以及科学计算的前沿技术,Python在物联网开发中也获得了巨大的推动力 。对于数据密集型应用程序 , Python是一个不错的选择 , 特别是在管理和组织复杂数据时 。
JavaScript:事件驱动物联网应用的最佳解决方案
根据年度StackOverflow开发者调查显示,JavaScript是过去五年来最流行的编程语言之一,是现代Web开发中的核心技术 。

推荐阅读