Forum CDRinfo.pl

Forum CDRinfo.pl (https://forum.cdrinfo.pl/)
-   Komputery - oprogramowanie i sprzęt (https://forum.cdrinfo.pl/f113/)
-   -   Programowanie C (https://forum.cdrinfo.pl/f113/programowanie-c-80361/)

polakT 30.10.2008 22:55

Cytat:

Napisany przez rosol (Post 976129)
@Patrix nie warto sie bawic w takie jezyki jak stare C ;] Trzeba isc do przodu a nie cofac sie;) Szczerze to po tym tygodniu dostalem oczoplasu od metod numerycznych i programowania C/C++ a poza tym po dobrym piwie jestem i nie chce mi sie dzisiaj nad tym myslec ;)


heheh, to wiesz, wszystko zależy, np ja cofnąłem się jeszcze bardziej do ASM :), chociaż ostatnio próbuję C, ale zaduze pliki mi wychodzą :|

rosol 30.10.2008 22:35

@Patrix nie warto sie bawic w takie jezyki jak stare C ;] Trzeba isc do przodu a nie cofac sie;) Szczerze to po tym tygodniu dostalem oczoplasu od metod numerycznych i programowania C/C++ a poza tym po dobrym piwie jestem i nie chce mi sie dzisiaj nad tym myslec ;)

andy 30.10.2008 22:30

A nie mo***380;na robi***263; offsetu jak napotkany znak to ">"?
Np. p***281;tla napotyka znak "<" ko***324;czy dzia***322;anie i rozpoczyna si***281; od [i] + 3 i leci do momentu kiedy mamy znacznik "<" zapisuj***261;c ci***261;g do jakiego***347; stringa. I tak w k***243;***322;ko a***380; p***281;tla while nie b***281;dzie fa***322;szywa.

EDIT

Dodatkowo mo***380;na sprawdza***263; czy znaki po [i] s***261; "/p>" czyli
Kod:

if(plik[i] + 1 == "/" and plik[i] + 2 == "p" and plik[i] + 3 == ">")
{
i += 4;
buff += plik[i];
}


Patrix 30.10.2008 22:29

Cytat:

Napisany przez rosol (Post 976124)
hmmm a czemu C++ nie moze byc?:>

Dlatego, że wałkuję C :D
Mam pomysł, użyję strstr() z biblioteki string.h zobaczymy czy się uda ;)

rosol 30.10.2008 22:17

hmmm a czemu C++ nie moze byc?:>

Patrix 30.10.2008 22:16

taa... C++ jest podobne do PHP gdzie szalej***281;, ale C jest troszk***281; bardziej krety***324;skie :szczerb:
otwieranie pliku na wska***378;nik i inne ciu*stwa :szczerb:

rosol 30.10.2008 22:12

ajjj no sorki patrix ale jestem po malym i niewyraznie widze :P;] ale algorytm widzisz wiec latwo zrobisz teraz w C ;]

Patrix 30.10.2008 22:08

Fajnie... ale to jest C++ a nie C, pisalem w pierwszym poscie, ze pisz***281; w C :)

rosol 30.10.2008 22:04

Cytat:

int main(int argc, char *argv[])
{
ifstream plik;
char c;
plik.open("abc.txt");
if(!plik.is_open())
{
cerr<<"blad otwarcia";
exit(1);
}

else
char r,o,s,l;
while(plik.get(c))
{
if(c=='<')
{
r=c;
plik.get(o);
if(o=='p')
{
plik.get(s);
if(s=='>')
{}
}

else if(o=='/')
{
plik.get(s);
if(s=='p')
{
plik.get(l);
if(l=='>')
{cout<<"\n\n";}
else
cout<<r<<o<<s;
}
}

else
cout<<r<<o;

}

else
cout<<c;
}
plik.clear();
plik.close();
getchar();
system("PAUSE");
return EXIT_SUCCESS;
}
Powinno dzialac;]
Zrobilem zeby po znakach </p> wstawialo 2 znaki nowej linii zeby akapity oddzielic;]

Patrix 30.10.2008 19:47

z samym " < > " to nie jest trudno ale to ma filtrowa***263; tylko znaczniki " <p> </p> " (zostaje tylko zaw. miedzy nimi) bo gdy w smieciach b***281;d***261; inne znaczniki to one maj***261; by***263; odsiane jako ***347;mieci :)

Dlatego pisz***281;, ***380;e 3 znaki na raz ... :)

polakT 30.10.2008 19:40

Cytat:

Napisany przez Patrix (Post 976022)
Problem tyczy programu w C (nie C# ani C++)

Problem mam taki, ***380;e potrafi***281; to n***281;dznie odfiltrowa***263; ale szukaj***261;c tylko < > Czyli po jednym znaku otwarcia i zamkn***281;cia. Nie mam pomys***322;u jak szuka***263; 3 znak***243;w w znaczniku na raz np <p>


Jakie***347; pomys***322;y ? :)

a moze 2 przebiegi ??
1) stawiasz koniec linijki po kazdym > (ew zapis do czegos)
2) wywalasz / omijasz linijki zaczynajace sie od <

Patrix 30.10.2008 15:49

Programowanie C
 
Problem tyczy programu w C (nie C# ani C++)

Na pocz***261;tek podstawa:
Kod:

#include<stdio.h>
#include<stdlib.h>
#include<ctype.h>

int main() {
  FILE * plik;
  plik = fopen("abc.txt","rt");
  if(plik != NULL) {
    int znak;
    while((znak=fgetc(plik)) != EOF) putchar(znak);
    fclose(plik);
  }
  else printf("Blad otwarcia pliku");
  getchar();
return EXIT_SUCCESS;
}

Powy***380;szy kodzik otwiera plik tekstowy i wy***347;wietla ca***322;***261; jego zawarto***347;***263; na ekranie.


Plik tekstowy abc.txt ma zawarto***347;***263;:
Cytat:


<p>tekst tekst tekst tekst tekst tekst tekst tekst tekst tekst tekst tekst tekst</p>smieci smieci smieci smieci smieci smieci smieci smieci smieci smieci smieci smieci smieci smieci smieci smieci smieci smieci smieci smieci smieci smieci smieci smieci smieci <p>tekst tekst tekst tekst tekst tekst tekst tekst tekst tekst tekst tekst tekst</p> smieci smieci smieci smieci smieci smieci smieci smieci smieci smieci<p>tekst tekst tekst tekst tekst tekst tekst tekst tekst tekst tekst tekst tekst</p>smieci smieci smieci smieci smieci smieci smieci smieci smieci smieci smieci smieci smieci smieci smieci smieci smieci smieci smieci smieci smieci<p>tekst tekst tekst tekst tekst tekst tekst tekst tekst tekst tekst tekst tekst</p>smieci smieci smieci smieci smieci smieci smieci smieci smieci smieci smieci smieci smieci smieci <p>tekst tekst tekst tekst tekst tekst tekst tekst tekst tekst tekst tekst tekst</p>smieci smieci smieci smieci smieci smieci smieci smieci smieci smieci smieci smieci smieci smieci smieci smieci smieci smieci smieci smieci smieci smieci smieci smieci smieci <p>tekst tekst tekst tekst tekst tekst tekst tekst tekst tekst tekst tekst tekst</p> smieci smieci smieci smieci smieci smieci smieci smieci smieci smieci<p>tekst tekst tekst tekst tekst tekst tekst tekst tekst tekst tekst tekst tekst</p>smieci smieci smieci smieci smieci smieci smieci smieci smieci smieci smieci smieci smieci smieci smieci smieci smieci smieci smieci smieci smieci<p>tekst tekst tekst tekst tekst tekst tekst tekst tekst tekst tekst tekst tekst</p>smieci smieci smieci smieci smieci smieci smieci smieci smieci smieci smieci smieci smieci smieci <p>tekst tekst tekst tekst tekst tekst tekst tekst tekst tekst tekst tekst tekst</p>smieci smieci smieci smieci smieci smieci smieci smieci smieci smieci smieci smieci smieci smieci smieci smieci smieci smieci smieci smieci smieci smieci smieci smieci smieci <p>tekst tekst tekst tekst tekst tekst tekst tekst tekst tekst tekst tekst tekst</p> smieci smieci smieci smieci smieci smieci smieci smieci smieci smieci<p>tekst tekst tekst tekst tekst tekst tekst tekst tekst tekst tekst tekst tekst</p>smieci smieci smieci smieci smieci smieci smieci smieci smieci smieci smieci smieci smieci smieci smieci smieci smieci smieci smieci smieci smieci<p>tekst tekst tekst tekst tekst tekst tekst tekst tekst tekst tekst tekst tekst</p>smieci smieci smieci smieci smieci smieci smieci smieci smieci smieci smieci smieci smieci smieci <p>tekst tekst tekst tekst tekst tekst tekst tekst tekst tekst tekst tekst tekst</p>smieci smieci smieci smieci smieci smieci smieci smieci smieci smieci smieci smieci smieci smieci smieci smieci smieci smieci smieci smieci smieci smieci smieci smieci smieci <p>tekst tekst tekst tekst tekst tekst tekst tekst tekst tekst tekst tekst tekst</p> smieci smieci smieci smieci smieci smieci smieci smieci smieci smieci<p>tekst tekst tekst tekst tekst tekst tekst tekst tekst tekst tekst tekst tekst</p>smieci smieci smieci smieci smieci smieci smieci smieci smieci smieci smieci smieci smieci smieci smieci smieci smieci smieci smieci smieci smieci<p>tekst tekst tekst tekst tekst tekst tekst tekst tekst tekst tekst tekst tekst</p>smieci smieci smieci smieci smieci smieci smieci smieci smieci smieci smieci smieci smieci smieci
Ubzdura***322;em sobie zadanie, ***380;e chc***281; odfiltrowa***263; od ***347;mieci tekst znajduj***261;cy si***281; pomi***281;dzy znacznikami <p> </p> i odfiltrowany wy***347;wietli***263; na ekran.
Problem mam taki, ***380;e potrafi***281; to n***281;dznie odfiltrowa***263; ale szukaj***261;c tylko < > Czyli po jednym znaku otwarcia i zamkn***281;cia. Nie mam pomys***322;u jak szuka***263; 3 znak***243;w w znaczniku na raz np <p>


Jakie***347; pomys***322;y ? :)


Wszystkie czasy w strefie CET. Aktualna godzina: 12:10.

Powered by vBulletin® Version 3.9.0 LTS
Copyright ©2000 - 2026, vBulletin Solutions Inc.