关于比较易错的字符串面试题的总结,不断更新

1
C/C++把常量字符串放在一个单独的区域 不是堆和栈 再另一个叫文字常量区的地方
当把相同的string常量赋值给不同指针 时 指针 这些指针其实指向同样的区域
但是用常量内存初始化字符数组 就不一样了。
比如
char str1[]="gaolei";
char str2[]="gaolei";
char * str3="gaolei";
char * str4="gaolei";
这样 str1 和 str2 是不相等的 但是str3 和 str4 是相等的 指向内存中相同的区域


2
关于 gets getline
已经很多次 忘记怎么用了。。getline 是C++ 的函数用法是getline(cin,str);
str 必须是string类型的
gets(arr)是C 中的函数


3


 char * str=”microsoft”; return  str==”microsoft”;
这个return 得到的是true 是微软笔试时我没选的。。错了。



你可能感兴趣的:(面试)