Страница 1 из 1
Исправьте ошибку в функции
Добавлено: 24 ноя 2010, 19:06
Lotles
Помогите тут
На строке return new_str выдает ошибку error C2059: syntax error : 'return'
Код: Выделить всё
#include "stdafx.h"
#include <conio.h>
using namespace std;
char* new_str=new char[50];
char* copy(){
char ch;
do{
ch=getchar();
for(int i=0;ch!=10;i++)
new_str[i]=ch;
while(ch!=10);
}
return new_str;
}
void main(){
copy();
}
Re: Исправьте ошибку в функции
Добавлено: 25 ноя 2010, 11:16
Albor
Нет закрывающей фигурной скобки перед while. Такие ошибки необходимо самому находить.
Re: Исправьте ошибку в функции
Добавлено: 25 ноя 2010, 11:22
BBB
Albor писал(а):Нет закрывающей фигурной скобки перед while. Такие ошибки необходимо самому находить.
"Не то, чтобы ты совсем не попал, Пятачок, но ты не попал по шарику" (c)

Это я к тому, что в предлагаемом тексте фигурная скобка, которая должна стоять перед while, чуть "сдвинулась" и стоит после while.
Re: Исправьте ошибку в функции
Добавлено: 25 ноя 2010, 13:29
Albor
BBB писал(а):
Это я к тому, что в предлагаемом тексте фигурная скобка, которая должна стоять перед while, чуть "сдвинулась" и стоит после while.
Ну, в данном случае Винипух сам виноват - не в том месте завис.

Re: Исправьте ошибку в функции
Добавлено: 25 ноя 2010, 18:53
Lotles
псб
Я невн-ый
Re: Исправьте ошибку в функции
Добавлено: 25 ноя 2010, 19:57
Lotles
Тут еще помогите
Код: Выделить всё
while(i<strlen(str)){
if (strchar(delim,str[i]))
'strchar': identifier not found, even with argument-dependent lookup
Код: Выделить всё
#include "stdafx.h"
#include <conio.h>
using namespace std;
char* str=new char[50];
char* copy(){
char ch;
do{
for(int i=0;ch!=10;i++){
ch=getchar();
str[i]=ch;
}
}
while(ch!=10);
return str;
}
char* editing(char* delim){
char* new_str=new char[50];
int i = 0;
while(i<strlen(str)){
if (strchar(delim,str[i]))
i++;
else
new_str[i]=str[i];
}
cout << new_str << endl;
return new_str;
}
int main(){
char* str;
copy();
char* d=" ";
editing(d);
return 0;
}
Re: Исправьте ошибку в функции
Добавлено: 25 ноя 2010, 19:59
Lotles
Тут еще помогите
Код: Выделить всё
while(i<strlen(str)){
if (strchar(delim,str[i]))
'strchar': identifier not found, even with argument-dependent lookup
warning C4018: '<' : signed/unsigned mismatch
Код: Выделить всё
#include "stdafx.h"
#include <conio.h>
using namespace std;
char* str=new char[50];
char* copy(){
char ch;
do{
for(int i=0;ch!=10;i++){
ch=getchar();
str[i]=ch;
}
}
while(ch!=10);
return str;
}
char* editing(char* delim){
char* new_str=new char[50];
int i = 0;
while(i<strlen(str)){
if (strchar(delim,str[i]))
i++;
else
new_str[i]=str[i];
}
cout << new_str << endl;
return new_str;
}
int main(){
char* str;
copy();
char* d=" ";
editing(d);
return 0;
}
Re: Исправьте ошибку в функции
Добавлено: 25 ноя 2010, 21:13
Lotles
все не надо