富途最新基础组件Go语言高级开发一面面试题

2022-04-01 20:12:19 浏览数 (1)

前言

大家好,我是熊哥。最近一位做后台开发的朋友面试了富途基础组件Go语言高级开发工程师,熊哥分享一下一面的面试题,供大家参考,希望能对大家找工作有所帮助。

第一题

代码语言:javascript复制
已知有 C 语言定义 char a[] = {0, 1, 2, 3, 4};那么表达式

a[0]  = 0x100   *a   strlen(a)   sizeof(a) 的值是?

第二题

代码语言:javascript复制
已知有结构体 A 的定义:
struct A {
  char a;
  int b[0];
  short c;
};
那么 sizeof(A) 的值是?

第三题

代码语言:javascript复制
下面的函数用于将整数转为十进制字符串,请找出其中所有的问题并改正它们。
char *nums2str(int num, char *str_result, int size) {
  char *p = str_result;
  
  // 找到个位数在字符串中所在的位置
  for (int divsor = 10; num / divsor != 0; divsor *= 10)
    p  ;
  
  // 从尾向头将整数逐字转为字符串
  while (num) {
    *p-- = num % 10;
    num /= 10;
  }
  
  return str_result;
}

第四题

代码语言:javascript复制
在 Linux 环境下用 gcc 构建一个 C/C   程序时,编译器报

“undefined reference to ...” 的错误,

请分析可能存在哪些问题,怎么解决?

第五题 算法题

代码语言:javascript复制
将一个数组的所有元素向右移动若干单位,并把数组右侧溢出的元素填补
在数组左侧的空缺中,这种经操作称为数组的循环平移。

给你一个不小于 3 个元素的数组 a,已知 a 是从一个有序且不包含
重复元素的数组平移 k(k 大于等于 0 且小于数组长度)个单位而来;
请写一个函数,输入 int 类型数组 a,返回 k 的值。

例如,对于数组 a = {5, 1, 2, 3, 4},它由有序数组 
{1, 2, 3, 4, 5} 循环平移 1 个单位而来,因此 k = 1。

0 人点赞