Я только что установил Eclipse для C / C ++ и пытался использовать отладчик. Моя программа включает в себя получение входных данных, проблема в том, что отладчик не ждет, пока я введу входные данные, и даже если я делаю это, кажется, что он игнорирует его и работает с ранее определенным входным сигналом внутри или чем-то еще. (Программа должна разбивать длинные строки на более мелкие и печатать их).
#include <stdio.h>
#define MAXINPUTLENGTH 1000
#define MAXOUTPUTLENGTH 5
void myPrint(char line[], int start, int end);
int getline(char line[], int maxLength);
main()
{
char input[MAXINPUTLENGTH];
int len;
int latestSpace = -1;
while ((len = getline(input, MAXINPUTLENGTH)) > 0)
{
int offset = 0;
while (len > 0)
{
int i = 0;
if (len <= MAXOUTPUTLENGTH)
{
myPrint(input, offset, offset + len);
len = 0;
}
else
{
for (i = 0; i < MAXOUTPUTLENGTH; i++)
{
if (input[i] == ' ')
{
latestSpace = i + offset;
}
}
myPrint(input,offset,latestSpace);
len = len - (latestSpace-offset);
offset = latestSpace+1;
}
}
}
return 0;
}
int getline(char line[], int maxLength)
{
int i;
int c;
for (i = 0; i < maxLength - 1 && (c = getchar()) != EOF && c != '\n'; i++)
line[i] = c;
if (c == '\n')
{
line[i] = c;
i++;
}
return i;
}
void myPrint(char line[], int start, int end)
{
for (int i = start; i < end; i++)
putchar(line[i]);
}