//char* lines[8] = { nullptr };
char txt[168] = { '\0' };
void setup() {
Serial.begin(115200);
strcpy(txt, "line one\nline two\nline three\nline four\nline five\nline six\nline seven\nline eight\n");
int index = 0;
int offset = 2;
char *sep;
const char *str = txt;
char **ptr = &str;
char* lines[8];
do {
sep = strchr(*ptr, '\n');
if (sep) {
*sep = '\0';
if (index >= offset && index < offset+8) {
lines[index] = *ptr;
Serial.print(index-offset); Serial.print(" "); Serial.println(lines[index]);
}
sep++;
*ptr = sep;
}
index++;
} while (*ptr);
for (int i=0; i<8; i++) {
Serial.print(i); Serial.print(" "); Serial.println(lines[i]);
}
ptr = &str;
Serial.println(*ptr);
/*
for (int i=0; i<strlen(txt); i++) {
Serial.print(*ptr++);
if (*ptr[i] == '\n') {
*ptr = '\0'; ptr++;
}
}
Serial.println();
*/
}
void loop() {
delay(10);
}