Почему происходит ошибка сегментирования? - C (СИ)
Формулировка задачи:
#include <stdio.h>
#include <string.h>
#include<iostream>
#include <stdlib.h>
#define SPCHARS " ,.\t"
#define kol 3
#define N 256
using namespace std;
int main()
{
int f=0,i,j=0,k,p;
char str[N];
char str1[N];
j=0;
printf("Vvedite text: ");
gets (str);
for (i=0;strlen(str);i++)
{
if ( str[i]='.') //проверка наличия точки
{
f=1;
}}
if (f=0)
{
cout<<"Нету точки"<<endl;
return(0);
}
else
{
for (i=0;strlen(str);i++)
{
if(str[i]!=' ')
k++;
if (str[i]==' ' && k==kol)
{
for(j=1-3;j<=i;j++)
{
str1[p]=str[j];
p++;
}
k=0;
}
if(str[i]==' ' && k!=3)
k=0;
}}
printf("%s",str1);
return 0;
}Решение задачи: «Почему происходит ошибка сегментирования?»
textual
Листинг программы
for (i=0;i < strlen(str);i++)