[ anon81718 @ 29.04.2006. 02:47 ] @
ovako, ovo je samo dio mog coda sto sam radio ali mi javlja da imam gresku u funkciji
a radio sam po knjizi i po zadanoj funkciji...

moze li mi neko reci gdje sam pogrijesio:

thx!

code:

#include <iostream>
#include <stdio>
#include <string>
#include <stdlib>
using namespace std;


void strrev(char *s) {
char temp, *end=s;
while(*end) end++;


for(end -= 1;s < end ; s++, end--) {
temp = *s;
*s = *end;
*end = temp;
}

char *strRight(char *str, int n){
char *tmp;
tmp = strdup(str);
tmp = strdup(str);
strncpy(tmp + n,"",strlen(tmp) - n);
tmp = strdup(str);
return tmp;
}


char *strLeft(char *str,int n){
char *tmp;
tmp = strdup(str);
strncpy(tmp + n,"",abs(strlen(tmp) - n));
return tmp;
}


char *strMid(char *str, int start, int over) {
char *tmp;
tmp = strLeft(str, start + over - 1);
strrev(tmp);
tmp = strLeft(tmp, over);
strrev(tmp);
return tmp;
}


int isalpha(char *str) {
if ((*str >= 'a') && (*str <= 'z') || (*str >= 'A') && (*str <= 'Z')) {return 1;}
else {return 0;}
}
[ n1tr0 @ 29.04.2006. 03:37 ] @
Kao prvo dobro bi bilo uredno ispisati program(uvuceno i koristi code - da bude preglednije).
Za sada na prvi pogled upalo mi je vise toga u oko:
npr. kod header file-ova umesto
Code:
#include <iostream>

pisi
Code:
#include <iostream.h>

(tako za sve header-e...)

Zatim:
Code:

void strrev(char *s) {
char temp, *end=s;
while(*end) end++;


for(end -= 1;s < end ; s++, end--) {
temp = *s;
*s = *end;
*end = temp;
}


...tu mislim da ti treba jos jedna zagrada(} na kraju):
Code:

void strrev(char *s) 
{
   char temp, *end=s;
   while(*end) end++;

   for(end -= 1;s < end ; s++, end--) 
   {
      temp = *s;
      *s = *end;
      *end = temp;
   }
}

To je sto se tice sintaksnih gresaka.
Ako ima semantickih javi pa cemo da vidimo...

[Ovu poruku je menjao n1tr0 dana 29.04.2006. u 04:38 GMT+1]
[ #Ninja# @ 02.05.2006. 21:16 ] @
Treba mu <iostream.h> samo ako se koristi Borlandovim kompajlerom. U ostalim slučajevima je samo <iostream>.
[ kiklop74 @ 03.05.2006. 22:08 ] @
<iostream.h> je totalni arhaizam i treba ga koristiti samo sa prastarim verzijama C++ kompajlera koji ne podrzavaju noviji standard kao sto je borland c++ 3.31

U svim drugim slucajevima

#include <iostream>


[ leka @ 04.05.2006. 09:29 ] @
Hoce li se ljudi IKADA nauciti da uz svoje tekstove u problemima prilikom kompajliranja priloze TACNO sta kaze kompajler/linker !!??
[ anon81718 @ 04.05.2006. 12:46 ] @
da mislio sam da sam to napisao...sorry

compiler kaze:

---> Declaration syntax error in function srrev(char *) - u liniji 19

et...
[ NastyBoy @ 04.05.2006. 13:29 ] @
Tja... koliko ja vidim samo ti fali jedno "}" na kraju te funkcije
[ anon81718 @ 06.05.2006. 16:04 ] @
da da sredio sam to
ja sam bio stavio dole na kraj pa mi nije radilo...

Thank You!