Dan ga ik eerst nog wat meer uitleggen over referencesquote:Op woensdag 9 juni 2004 19:26 schreef TimberWolf het volgende:
[..]
Hoeveel wil je er hebben? Mail maar op bofh apendingetje meanframe punt com
Maareh, vallen er nog wat praktijkvoorbeelden te geven voor pointers, pardon references? Ik denk het te snappen, maar ik zie het wezelijke nut nog niet echt![]()
Oftewel: Meester, ik snap het wel, maar ik weet niet waarom
quote:Op woensdag 9 juni 2004 19:26 schreef TimberWolf het volgende:
[..]
Hoeveel wil je er hebben? Mail maar op bofh apendingetje meanframe punt com
Maareh, vallen er nog wat praktijkvoorbeelden te geven voor pointers, pardon references? Ik denk het te snappen, maar ik zie het wezelijke nut nog niet echt![]()
Oftewel: Meester, ik snap het wel, maar ik weet niet waarom
Alsjeblieft. Ik heb hier een variabele aangepast met behulp van een functie, zonder van die functie een return te gebruiken. Output van deze code is "12"quote:sub alter {
my ($arg) = @_;
${$arg} = 2
};
my $test = 1;
my $ref = \$test;
print $test;
alter($ref);
print $test;
Ah. Eh. Nu ga ik inderdaad de domme cursist moeten zijn, want:quote:Op woensdag 9 juni 2004 19:31 schreef daReaper het volgende:
Alsjeblieft. Ik heb hier een variabele aangepast met behulp van een functie, zonder van die functie een return te gebruiken. Output van deze code is "12"
Komt ie...quote:Op woensdag 9 juni 2004 19:48 schreef TimberWolf het volgende:
[..]
Ah. Eh. Nu ga ik inderdaad de domme cursist moeten zijn, want:
A - Why? Waarom is dat handig?
B - Ik had nooit gedacht dat ik van zo weinig regels code, zo weinig zou snappen![]()
Kan iemand me een real-world voorbeeld doen van het nut van pointers? I've gone stupid, blijkbaar![]()
SPOILEROm spoilers te kunnen lezen moet je zijn ingelogd. Je moet je daarvoor eerst gratis Registreren. Ook kun je spoilers niet lezen als je een ban hebt.Pfff... dat was even snel coden
Misschien ging ik daar over een paar dingen een beetje te snel... dus besteed er nog maar geen aandacht aan... ik heb hieronder even het gedeelte wat niet helemaal duidelijk was geprobeert uit te leggen, helpt dat ?
[ Bericht 1% gewijzigd door ChOas op 09-06-2004 20:20:18 ]"I contend that we are both atheists. I just believe in one fewer god than you do.
When you understand why you dismiss all the other possible gods, you will understand why I dismiss yours."
[Stephen Roberts]
aaaaaah... wat hier staat:quote:Op woensdag 9 juni 2004 19:53 schreef TimberWolf het volgende:
Even pogen deze stap voor stap te doen. Ik move de functie even na de code:
my $test = 1;
De variabele test wordt aangemaakt, en gevuld met 1. Clear
my $ref = \$test;
Er wordt een reference gemaakt voor test, die noemen we ref. Die wijst dus
naar de variabele met de waarde 1. Clear
print $test;
Duh.
alter($ref);
Voer de functie uit
print $test;
Laat test zien
sub alter {
my ($arg) = @_;
Vul $arg met de te verwachten waarde. Hier ben ik um kwijt
${$arg} = 2
Not a fucking clue. Sorry...
};
Wat mis ik hier nu aan? Ik schaam me dood dat ik het niet snap namelijk![]()
Ah, dat snap ik inderdaad dan beterquote:Op woensdag 9 juni 2004 20:12 schreef ChOas het volgende:
[..]
aaaaaah... wat hier staat:
my ($arg)=@_;
is hetzelfde als : my $arg=shift;
Dus: Het eerste element in @_ (De reference die aan de functie is meegegeven)...
${$arg}=2 betekent dat je 2 stopt in de scalar variabele waar $arg naar wijst.
Al beter ? zo niet zeg het, leg ik het op een andere manier uit...
Pjee!!... je stagneert helemaal niets!!.. dan heeft de rest maar wat meer geduld!quote:Op woensdag 9 juni 2004 20:20 schreef TimberWolf het volgende:
[..]
Ah, dat snap ik inderdaad dan beterDie hele 'do what i mean' variable in perl is krachtig zat, maar leuk verwarrend bovendien.
In jouw voorbeeld zie ik momenteel zelfs de hele pointers over het hoofd, maar dat kan door de warmte komenIk pak dadelijk een biertje en een half uurtje rust, en dan komt het vast goed
Ga voor de rest overigens vooral verder, ik blaat er af en toe wel tussendoor! Zou zonde zijn als ik de cursus stagneer tenslotte
't is maar goed dat dit ChOas' topic is, en niet die van mij, of niet dan?quote:Op woensdag 9 juni 2004 20:20 schreef TimberWolf het volgende:
[..]
Ah, dat snap ik inderdaad dan beterDie hele 'do what i mean' variable in perl is krachtig zat, maar leuk verwarrend bovendien.
In jouw voorbeeld zie ik momenteel zelfs de hele pointers over het hoofd, maar dat kan door de warmte komenIk pak dadelijk een biertje en een half uurtje rust, en dan komt het vast goed
Ga voor de rest overigens vooral verder, ik blaat er af en toe wel tussendoor! Zou zonde zijn als ik de cursus stagneer tenslotte
SPOILEROm spoilers te kunnen lezen moet je zijn ingelogd. Je moet je daarvoor eerst gratis Registreren. Ook kun je spoilers niet lezen als je een ban hebt.
Het kan ook gewoon zijn dat ik een klein snappertje heb voor dit soort dingenquote:Op woensdag 9 juni 2004 20:36 schreef daReaper het volgende:
[..]
't is maar goed dat dit ChOas' topic is, en niet die van mij, of niet dan?Ik ben echt bijzonder slecht in uitleggen
Volgende deel regexps ga ik je apache logging gebruikenquote:Op woensdag 9 juni 2004 22:31 schreef TimberWolf het volgende:
Ah, en chOas, de regexp uitleg is tot nu toe glashelderIk verheug me op het volgende deel, en de rest vast ook, hoewel er maar weinig reageren
Right thenquote:Op woensdag 9 juni 2004 22:42 schreef ChOas het volgende:
Volgende deel regexps ga ik je apache logging gebruiken
De fout die ik krijd is.quote:#!/usr/bin/perl -w
use strict;
my $Number;
print "Voer een getal in onder de 10: ";
#krijg invoer van het toetsenbord (gebruiker)
$Number=<STDIN>;
#Enter uit $Number halen
chomp $Number;
if($Number>10)
{
print "Het nummer is groter dan 10 dus we gaan niet tellen\n";
}else{
print "het nummer is kleiner dan 10. We gaan tot 25 tellen\n";
#We gaan tot 25 tellen, met een for lus
for($Number;$Number<25;$Number++)
}
Wat doe ik fout want ik zie het echt niet. Het enige dat ik denk te weten is dat de fout in de for lus zit.quote:syntax error at ./test line 22, near ")
}"
Execution of ./test aborted due to compilation errors.
Je doet nix in de for loop... Sterker nog, je hebt geen { en } er achter gezetquote:Op donderdag 10 juni 2004 14:21 schreef Wouta het volgende:
Ik heb de eerste drie hoodfstukken gelezen en dacht laat ik is iets zinloos gaan maken.
Het volgende heb ik gemaak en het werkt niet
[..]
De fout die ik krijd is.
[..]
Wat doe ik fout want ik zie het echt niet. Het enige dat ik denk te weten is dat de fout in de for lus zit.
quote:#!/usr/bin/perl -w
use strict;
my $Number;
print "Voer een getal in onder de 10: ";
#krijg invoer van het toetsenbord (gebruiker)
$Number=<STDIN>;
#Enter uit $Number halen
chomp $Number;
if($Number>10)
{
print "Het nummer is groter dan 10 dus we gaan niet tellen\n";
}else{
print "het nummer is kleiner dan 10. We gaan tot 25 tellen\n";
#We gaan tot 25 tellen, met een for lus
for($Number;$Number<25;$Number++) {
print "$Number\n";
}
}
Dat het ik zelf moeten kunnen verzinnen.....quote:Op donderdag 10 juni 2004 14:27 schreef daReaper het volgende:
[..]
Je doet nix in de for loop... Sterker nog, je hebt geen { en } er achter gezet
[..]
Dat werkt gewoon wat ik me nu af vraag is waarom er een $ staat ipv een @ als je de fruit soorten gaat printen. Ik heb er een @ neergezet en toen ging perl heel bijdehand mij vertellen dat ik beter een $ kon gebruken. Maar helemaal snappen waarom ik geen @ moeten gebruiken daar doe ik niet.quote:#!/usr/bin/perl -w
use strict;
#Nieuwe list Fruit
my @Fruit=('Appel','Peer','Banaan','Kiwi');
#nieuwe scalar Index
my $Index;
#We gaan nu Index gebruiken om telkens een ander element uit de
#lijst aan te wijzen... met $Lijst[0] wijzen we zoals we eerder gezien
#hebben naar het 1e element.
#Wanneer we Index nou van 0 tot 3 laten lopen en telkens dat element
#afdrukken gebeurt het volgende:
for($Index=0;$Index<4;$Index++)
{
print "Dit is fruit: $Fruit[$Index]\n";
};
|
Forum Opties | |
---|---|
Forumhop: | |
Hop naar: |