PDA

View Full Version : سوال: حذف کردن spaceهای اضافی



admiral-s
سه شنبه 13 تیر 1391, 20:23 عصر
سلام.یه برنامه دارم که یه رشته رو میگیره و اسپیس های اضافی رو پاک میکنه...اما کامپایلرم اجرا نمیکنه..یه اروری میده نمیفهمم چیه..اینه ارور :

General perotection exception
0*13df:0*5243
NONAME 00(1) 0*13df:0*5243 perocesser fault


کد برنامه هم اینه :


#include <stdio.h>
#include <conio.h>
#include <string.h>
main(){
char str[5000];
printf("Enter an string : ");
gets(str);
for(int i=0;i<strlen(str);i++){
if(str[i] == ' ' && str[i+1] == ' '){
for(int j=i;j<strlen(str);j++)
str[j] = str[j+1];
i--;
}
}
puts(str);
getch();
}



لطفا" راهنمایی کنید برام خیلی مهمه .اگه برنامه مشکل داره کجاش ؟ اگه کامپایلر ایراد داره پس چرا بقیه برنامه ها اجرا میشن..خلاصه قاطی کردم نمیفهمم چشه..
ممنون.

kia.celever
سه شنبه 13 تیر 1391, 20:59 عصر
کامپایلر شما چیه؟ من توی Visual Studio 2010 اجرا کردم و درست کار می کرد.

admiral-s
سه شنبه 13 تیر 1391, 22:59 عصر
turbo c++ 4.5

rezaricky
چهارشنبه 14 تیر 1391, 11:38 صبح
اندازه ارایه str رو کمتر کنید، اجرا میشه
char str[2000];

Salar Ashgi
چهارشنبه 14 تیر 1391, 15:18 عصر
کد شما درسته ، ولی حرف همیشگی اینه که Turbo دیگه کامپایلر محسوب نمیشه !!