由买买提看人间百态

boards

本页内容为未名空间相应帖子的节选和存档,一周内的贴子最多显示50字,超过一周显示500字 访问原贴
JobHunting版 - 再问个简单的C问题
相关主题
为啥这个swap不可以?菜鸟求救 请大家看看我的代码有没有问题
请帮忙看段code,为什么过不了。问一道C++编程题
what's the output面试题目: 有2个字符串,消除第一个字符串中第二个字符串包含的所有字母。 例如: string1: helloworld string2: abcdef output: hlloworld 面
为什么我这段简单的程序segment fault请教一个字符串比较排序的问题 (转载)
【一个BB公司问的字母排序的问题】写程序时的一个小问题?
问个C的基本问题用 c 实现的字符串 permutation,求批评指点
问一个精华区里的题目问个字符串距离的问题
问一个经典题目C反转字符串的bug?
相关话题的讨论汇总
话题: str话题: len话题: end话题: sigsegv话题: while
进入JobHunting版参与讨论
1 (共1页)
h********m
发帖数: 116
1
简单的string reverse,为啥我会get sigsegv? 我用了下面两种不同的写法,都是这
样:
Program received signal SIGSEGV, Segmentation fault.
都在这一步过不了:
str[i] = str[len-i]
*str = *end;
14 /* Swap the chars */
15 while( i 16 temp = str[i];
17 str[i] = str[len-i];
18 str[len-i] = temp;
19 i++;
20 }
while(str != end){
char tmp = *str;
*str = *end;
*end = tmp;
str++;
end --;
}
c******t
发帖数: 1500
2
我猜在你的main函数:
int main()
{
char* str = "abcde";
}
对不对?
这样定义的字符串是字符串常量,是不能被modify的
h********m
发帖数: 116
3
哦,明白了,多谢!

【在 c******t 的大作中提到】
: 我猜在你的main函数:
: int main()
: {
: char* str = "abcde";
: }
: 对不对?
: 这样定义的字符串是字符串常量,是不能被modify的

r*********n
发帖数: 4553
4
如果你的len = str.size(),i是从0开始
那么str[len-i]=str[len]就错了,最后一个元素是str[len-1]
后面那个把
while(str != end)改成while(str <= end)
l*******0
发帖数: 63
5
Please try to think about what will happen when i=0 for str[i] = str[len-i]?
1 (共1页)
进入JobHunting版参与讨论
相关主题
C反转字符串的bug?【一个BB公司问的字母排序的问题】
老题重提:反转字符串问个C的基本问题
ebay电面面经,攒人品,求好运问一个精华区里的题目
hash table的size为什么最好是个质数?问一个经典题目
为啥这个swap不可以?菜鸟求救 请大家看看我的代码有没有问题
请帮忙看段code,为什么过不了。问一道C++编程题
what's the output面试题目: 有2个字符串,消除第一个字符串中第二个字符串包含的所有字母。 例如: string1: helloworld string2: abcdef output: hlloworld 面
为什么我这段简单的程序segment fault请教一个字符串比较排序的问题 (转载)
相关话题的讨论汇总
话题: str话题: len话题: end话题: sigsegv话题: while