麻烦大家帮我看下下面这段代码的错误,我是菜鸟

#include <stdio.h>
#include <string.h>

void stringFilter(const char *pInputStr, long lInputLen, char *pOutputStr)
{
bool table[10]={false};
long i=0;
for(long i=0;i<lInputLen;++i)
{
char c=pInputStr[i];
if(table[c-'a']==false)
{
pOutputStr[i++]=c;
table[c-'a']=true;
}
}
pOutputStr[i]=0;
}

void main()
{
char *output;
char *input="affhydaad";
long lInputLen;
lInputLen=strlen(input);
stringFilter(input,lInputLen,output);
printf("%s",output);
}

第1个回答  2013-09-04
无效内存应用或段错误,即内存溢出;你这里调用函数是 stringFilter(input,lInputLen,output);而output指针没有进行内存分配,对于指针必须要指向特定的内存空间否则不能做输出参数,可以这么修改
1)char output[100];
2)char *output=new char[100]; (C++写法,在return前时加delete output;)
3)char *output=(char*)malloc(sizeof(char)*100);(C写法,在return前加free(output);)
三种都可,任选

麻烦大家帮我看下下面这段代码的错误,我是菜鸟
无效内存应用或段错误,即内存溢出;你这里调用函数是 stringFilter(input,lInputLen,output);而output指针没有进行内存分配,对于指针必须要指向特定的内存空间否则不能做输出参数,可以这么修改 1)char output[100];2)char *output=new char[100]; (C++写法,在return前时加delete output;)3)char *...

我是个VB菜鸟 请高手帮忙看下下面代码哪里错了 给点意见谢谢啦!_百度...
Private Sub Command1_Click()Text1.Text = ""Form1.Cls End Sub Private Sub Text1_KeyPress(KeyAscii As Integer)Static x As Integer Dim str1 As String Dim str2 str1 = x If KeyAscii = 13 Then For i = 1 To Len(Text1.Text)str2 = Mid(Text1.Text, i, 1)If str2 = "...

能帮我完整仔细的解释一下下面这段代码吗?我是一个菜鸟,谢谢啦!
首先这段代码不是全部。只可能是程序的一部分,并且是定义在main函数之外的部分。student stu[100];\/\/此处定义了100个student数据类型的对象,student是类名。int n=0;\/\/这是用来记录输入的人数的变量 void student::add()\/\/student应该是一个类而不是数据结构,因为c++中的结构是不能有函数成员 \/...

跪求vb高手解释下面这段延迟程序~~我是一菜鸟,麻烦解释的详细些
当时刻差>指定值时,延迟结束, 这就是程序的原理.这里要注意一个重要细节: 一般情况下T1(当前时刻) > T2(最开始时刻), 但当T2是第一天,而T1是第二天时, 有可能T1 < T2, 因为Timer函数返回的是当前时刻距离当天零点的间隔时长. 因此代码中作了判断:加上一个周期的毫秒数(1天即86400000毫秒)...

有没有大神愿意帮我解释一下这两段bat代码,我是菜鸟,希望有详细的解释...
db"取消相应文件的隐藏,只读,系统属性 del "%userprofile%\\AppData\\Local\\iconcache.db" \/f \/q 删除相应文件 start explorer 启动explorer.exe进程 pause 暂停 第二组代码,第一行其实就是删除注册表中某个值,跟第一组正好相反,第一组是添加,第二组是删除 后面的代码跟第一组一样。

请css高手帮我看看问题,我是菜鸟。错误提示是服务器错误。但服务器是...
sqltext="select top 5 * from news where ClassID=21 and Passed=True order by infotime desc"rs

C高手们来帮我看下这个程序它可运行但不是我想要的结果,本人还是个菜 ...
你所谓的“这个程序”是指“程序主体”的那部分代码 还是指整个.exe程序?也就是,你希望如果“选择继续运行”则在当前窗口关闭后,可以自动再弹出个运行窗口出来?和直接点击.exe文件一样?你可以用下面的函数,试试看:"calc"是计算器,你改成自己编的那个程序名就可以了。include <windows.h> ::...

求问c语言,小弟是菜鸟,我的这段代码为什么编译和链接都没有问题,运行起...
在main()函数最后print(la);下面加一句 while(1);在执行 你就可以看到结果了 这是因为你的程序 一下子就执行完成 退出了

请高手帮我看看我这个公式错在哪里了,我是菜鸟不太懂表格的IF语句。谢...
你是做排名计分吗?你的函数错在B3:B23区间上,一般情况下,if判断的是一个单元格,而不是一个区间,还有就是大于小于的写法上不对 假如你在A3中输入如下公式:=if(B3>10,"10",IF(B3>5,"8",IF(B23>1,"6","4"))),就会出现你想要的数!

c# 请各位高手指点一下我这个菜鸟把!下面的程序那里出错了!能不能改...
string str = Console.ReadLine();if (str!=null ){ char[] chars = str.ToCharArray();for (int j = 0; j < str.Length; j++){ chars[j] = (char)((int)chars[j] + 4);} for (int k = 0; k < str.Length; k++){ Console.WriteLine("char[0]", chars[k]);} } ...

相似回答
大家正在搜