面经详情

当前内容设置为仅微信小程序内可见

前往微信小程序

相关推荐

匿名用户
嵌入式工程师
未通过未通过
1 、Char a[10] Sizeof(a) strlen(a) 各为多少 2、什么是对象 3、a=0x10 b=0x01 c= a^b<<1 答案 0x10 先左移再或 4、结构体在32位 ubuntu中的大小 struct A { int i; char a[5]; unsigned char b; }; 5、写出swap(x,y)函数 (x)=(x)+(y); (y)=(x)–(y); (x)=(x)–(y); 6、请找出下面代码中的所以错误 说明:以下代码是把一个字符串倒序,如“abcd”倒序后变为“dcba” #include"string.h" main() { char*src="hello,world"; char* dest=NULL; int len=strlen(src); dest=(char*)malloc(len); char* d=dest; char* s=src[len]; while(len--!=0) d++=s--; printf("%s",dest); return 0; } 答: 方法1: int main(){ char* src = "hello,world"; int len = strlen(src); char* dest = (char*)malloc(len+1);//要为\0分配一个空间 char* d = dest; char* s = &src[len-1];//指向最后一个字符 while( len-- != 0 ) *d++=*s--; *d = 0;//尾部要加\0 printf("%s\n",dest); free(dest);// 使用完,应当释放空间,以免造成内存汇泄露 return 0; } 方法2: #include #include main() { char str[]="hello,world"; int len=strlen(str); char t; for(int i=0; i<len/2; i++) { t=str[i]; str[i]=str[len-i-1]; str[len-i-1]=t; } printf("%s",str); return 0; } 7、 typedef void(fuc*)(int, int)的作用 8请问下面程序有什么错误? int a[60][250][1000],i,j,k; for(k=0;k<=1000;k++) for(j=0;j<250;j++) for(i=0;i<60;i++) 9、 const char* p char const* p char * const p 的用途 10、输出是什么 为什么 main() { int a[5]={1,2,3,4,5}; int *ptr=(int *)(&a+1); printf(“%d,%d”,*(a+1),*(ptr-1)); } 请问输出: 【标准答案】2,5 11、实现函数 memcpy(void* dest, void* source, size_t count) memmove(void *dst,const void *src,int count) void* mymemcpy(void* dest, void* source, size_t count) { char *ret = (char *)dest; char *dest_t = ret; char *source_t = (char *)source; while (count--){ *dest_t++ = *source_t++; } return ret; } void *my_memmove(void *dst,const void *src,int count) { char *ret; char *dst_t; char *src_t; ret = (char *)dst; if ((unsigned char*)dst <= (unsigned char*)src || (unsigned char *)dst >= ((unsigned char *)src + count)) { dst_t = (char *)dst; src_t = (char *)src; while (count--) { *dst_t++ = *src_t++; } }else{ dst_t = (char *)dst + count - 1; src_t = (char *)src + count - 1; while (count--) { *dst_t-- = *src_t--; } } return(ret); }...查看更多
包含1个问题,0个回答
Q:1 、Char a[10] Sizeof(a) strlen(a) 各为多少 2、什么是对象 3、a=0x10 b=0x01 c= a^b<<1 答案 0x10 先左移再或 4、结构体在32位 ubuntu中的大小 struct A { int i; char a[5]; unsigned char b; }; 5、写出swap(x,y)函数 (x)=(x)+(y); (y)=(x)–(y); (x)=(x)–(y); 6、请找出下面代码中的所以错误 说明:以下代码是把一个字符串倒序,如“abcd”倒序后变为“dcba” #include"string.h" main() { char*src="hello,world"; char* dest=NULL; int len=strlen(src); dest=(char*)malloc(len); char* d=dest; char* s=src[len]; while(len--!=0) d++=s--; printf("%s",dest); return 0; } 答: 方法1: int main(){ char* src = "hello,world"; int len = strlen(src); char* dest
2 年前 发布

进入微信小程序

前往微信小程序,查看更多结果

立即前往
看准网富士康富士康面试经验富士康面试经验:嵌入式软件工程师面试很好,共2轮面试
正在招聘每天日结200 实习生 月入7000+200 个岗位