关于javascript:SparkESClickHouse-构建DMP用户画像


行业竞争越来越强烈,精细化经营成为各企业取胜的秘籍。用户画像零碎作为提供精准用户数据的重要起源,曾经成为企业必备的外围平台,人才缺口大,薪资高。本课程将基于大数据支流技术,数据挖掘外围算法,带你打造企业实用的用户画像平台,晋升你的集体竞争力。

2 关键字
问题1:static关键字的作用?

答:

Static的用处次要有两个,一是用于润饰存储类型使之成为动态存储类型,二是用于润饰链接属性使之成为外部链接属性。

1动态存储类型:

在函数内定义的动态局部变量,该变量存在内存的动态区,所以即便该函数运行完结,动态变量的值不会被销毁,函数下次运行时能仍用到这个值。

在函数外定义的动态变量——动态全局变量,该变量的作用域只能在定义该变量的文件中,不能被其余文件通过extern援用。

2 外部链接属性

   动态函数只能在申明它的源文件中应用。

问题2:const关键字的作用?

答:

1申明常变量,使得指定的变量不能被批改。

const int a = 5;/a的值始终为5,不能被扭转/

const int b; b = 10;/b的值被赋值为10后,不能被扭转/

const int ptr; /ptr为指向整型常量的指针,ptr的值能够批改,但不能批改其所指向的值*/

int const ptr;/ptr为指向整型的常量指针,ptr的值不能批改,但能够批改其所指向的值*/

const int const ptr;/ptr为指向整型常量的常量指针,ptr及其指向的值都不能批改*/

2润饰函数形参,使得形参在函数内不能被批改,示意输出参数。

如int fun(const int a);或int fun(const char *str);

3润饰函数返回值,使得函数的返回值不能被批改。

const char getstr(void);应用:const str= getstr();

const int getint(void); 应用:const int a =getint();

问题3:volatile关键字的作用?

答:

volatile指定的关键字可能被零碎、硬件、过程/线程扭转,强制编译器每次从内存中获得该变量的值,而不是从被优化后的寄存器中读取。例子:硬件时钟;多线程中被多个工作共享的变量等。

问题4:extern关键字的作用?

答:

1用于润饰变量或函数,表明该变量或函数都是在别的文件中定义的,提醒编译器在其余文件中寻找定义。

extern int a;

extern int *p;

extern int array[];

extern void fun(void);

其中,在函数的申明带有关键字extern,仅仅是暗示这个函数可能在别的源文件中定义,没有其余作用。如:

头文件A:A_MODULE.h中蕴含

extern int func(int a, int b);

源文件A: A_MODULE.c中

include “A_MODULE.h”

int func(int a, int b)

{

     returna+b;

}

此时,开展头文件A_MODULE.h后,为

extern int func(int a, int b);/尽管暗示可能在别的源文件中定义,但又在本文件中定义,所以extern并没有起到什么作用,但也不会产生谬误/

int func(int a, int b)

{

     returna+b;

}

而源文件B:B_MODULE.c中,

include “A_MODULE.h”

int ret = func(10,5);/

开展头文件A_MODULE.h后,为

extern int func(int a, int b);/暗示在别的源文件中定义,所以在上面应用func(5,10)时,在链接的时候到别的指标文件中寻找定义/

int ret = func(10,5);

【腾讯云】轻量 2核2G4M,首年65元

阿里云限时活动-云数据库 RDS MySQL  1核2G配置 1.88/月 速抢

本文由乐趣区整理发布,转载请注明出处,谢谢。

您可能还喜欢...

发表回复

您的电子邮箱地址不会被公开。 必填项已用*标注

此站点使用Akismet来减少垃圾评论。了解我们如何处理您的评论数据