- 相關推薦
華為C/C++筆試題系列二
華為筆試題;C;C++;
1.說出下面這個程序的運行結果,并簡要敘述其理由:
char buf1[10]="hello";
char buf2[10]="hello";
if (buf1==buf2)
printf("equal!");
else printf("not equal!");
答:因為buf1,buf2分配了不同的內存塊,而比較的是數組名,實際上是兩個分別指向數組起始元素地址的指針。
2.指出下面這段程序中存在一些什么問題:
int loop,a[5];
int* p=a;
for (loop=0;loop<5;loop++)< p="">
{ p++;
*p=loop;
}
答:數組a[5]在創建時沒有初始化, 在for循環里也沒有起到完全初始化數組的作用,而且對一塊未知內存賦值。在最后一輪循環結束時p指向了數組a[5]的最后一個元素的下一個地址。
string 系列
char * strcpy( char *strDest, const char *strSrc )
{
assert( (strDest != NULL) && (strSrc != NULL) );
char *address = strDest;
while( (*strDest++ = * strSrc++) != ‘\0’ );
return address;
}
char* strncpy(char* strdest, const char* strsrc, int n)
{
assert((strdest != NULL) && (strsrc != NULL));
char* address = strdest;
while(n-- > 0)
*strdest++ = *strsrc++;
return address;
}
int strcmp(const char* str1, const char* str2)
{
assert((str1 != NULL) && (str2 != NULL);
int ret = 0;
while (!(ret = (unsigned char*)*str1 - (unsigned char*)*str2) && (*str2))
{
str1++;
str2++;
}
if (ret > 0)
ret = 1;
else if (ret < 0)
ret = -1;
return ret;
}
int strlen(const char* str)
{
assert(str != NULL);
int len = 0;
while (\ 主站蜘蛛池模板: 一级看片免费视频囗交动图| 国产在线观看无码的免费网站| 国产人妻大战黑人第1集| 美女久久久久| 超碰97人人人人人蜜桃| 丰满少妇被猛男猛烈进入久久| 亚洲性色成人av天堂| 国产交换配乱淫视频a免费| 亚洲搞av| 欧美三级网址| 久久精品无码一区二区软件| 久久96国产精品久久99软件| 中文字幕无码久久一区| 久久无码av一区二区三区| a天堂国产| 曰韩黄色片| 国产啪精品视频网站丝袜| 91我要操| 青青国产在线观看| 日日夜夜影视| 国产资源精品中文字幕| 亚洲aⅴ无码成人网站国产app| 国产片自拍| 丰满少妇乱子伦精品看片| 亚洲福利在线播放| 午夜小视频福利| 99精品日本二区留学生| 国产精品免费视频网站| 国产又大又长又粗又黄| 亚洲狼人伊人| 欧美国产亚洲精品久久久8v| 久久久久77777人人人人人| 精人妻无码一区二区三区| 国产日韩欧美在线看| 性日韩| 国产一级免费大片| 亚洲色成人四虎在线观看| 亚洲中文字幕人成乱码| 国产乱淫av片免费看| 午夜精品久久久久久久99热影院 | 久久亚洲人|