• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

Jak wczytywać linię do białego znaku? Programowanie w C

VPS Starter Arubacloud
0 głosów
137 wizyt
pytanie zadane 9 stycznia 2020 w C i C++ przez LanceVance Nowicjusz (120 p.)


FILE *pToFile = fopen("wej.txt", "r");
	int line = 0;

	char input[512];

	while (fgets(input, 512, pToFile)) {
		line++;
		if (line > 1) printf("%s", input);
	}

fclose(pToFile);

W jaki sposób mogę wczytywać daną linię do momentu wystąpienia białego znaku (tj. spacji)?

2 odpowiedzi

0 głosów
odpowiedź 9 stycznia 2020 przez tkz Nałogowiec (42,020 p.)

Nie piszę na co dzień w C, więc moje rozwiązanie na pewno nie jest najlepsze, ale działa, przynajmniej pozornie

#include <stdio.h>

main() 
{
   FILE *fp;
   char buff[255];
   fp = fopen("text.txt", "r");
   fscanf(fp, "%s", buff);
   printf("%s\n", buff );
   fclose(fp);
}

 

0 głosów
odpowiedź 10 stycznia 2020 przez Bondrusiek Maniak (61,440 p.)

Polecam zapoznać się z tablica ASCII. W niej znajdziesz jaką liczbę reprezentuje spacja. Do wyświetlania znaku możesz użyć %c zamiast %s(dla stringu). Wczytujesz linie iterujesz po niej a następnie jak znajdziesz spacje to przerywasz wyświetlanie i przechodzisz do następnej linii. Przykład


    FILE *pToFile = fopen("wej.txt", "r");

    int line = 0;

    char input[512];
    while (fgets(input, 512, pToFile)) {
        line++;
        if (line > 1){
            int i;
            for(i = 0; i < 512 && input[i]; ++i)
            {
                if(input[i] == 32) //32 w ASCII to spacja
                {
                    break; // jesli wystąpi spacja, nie czytaj dalej przejdz do nowej linii
                }
                printf("%c", input[i]);
            }
            printf("\n");
        }
    }

Tablica ASCII:

https://theasciicode.com.ar/ascii-printable-characters/space-ascii-code-32.html

Podobne pytania

0 głosów
1 odpowiedź 2,975 wizyt
0 głosów
0 odpowiedzi 86 wizyt
0 głosów
3 odpowiedzi 1,109 wizyt

93,079 zapytań

142,043 odpowiedzi

321,452 komentarzy

62,424 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj

Wprowadzenie do ITsec, tom 2

Można już zamawiać tom 2 książki "Wprowadzenie do bezpieczeństwa IT" - będzie to około 650 stron wiedzy o ITsec (17 rozdziałów, 14 autorów, kolorowy druk).

Planowana premiera: 30.09.2024, zaś planowana wysyłka nastąpi w drugim tygodniu października 2024.

Warto preorderować, tym bardziej, iż mamy dla Was kod: pasja (użyjcie go w koszyku), dzięki któremu uzyskamy dodatkowe 15% zniżki! Dziękujemy zaprzyjaźnionej ekipie Sekuraka za kod dla naszej Społeczności!

...