Sponsored Content
Full Discussion: pointer in perl
Top Forums Shell Programming and Scripting pointer in perl Post 302434839 by pludi on Monday 5th of July 2010 11:37:53 AM
Old 07-05-2010
Perl has no pointers, but references. And you can traverse a hash of hashes (as in your example) the same way as a regular hash:
Code:
foreach my $name ( sort keys %{$config} ) {
    foreach my $option (sort keys %{$config->{$name}} ) {
        print "$name -> $option -> ", $config->{$name}->{$option}, "\n";
    }
}


Last edited by pludi; 07-05-2010 at 01:03 PM..
 

10 More Discussions You Might Find Interesting

1. Programming

pointer

void main() { int a={1,2,3,4,5,6,7,8,9,10}; int *p=a; int *q=&a; cout<<q-p+1<<endl; } The output is 10, how? if we give cout<<q it will print the address, value won't print.... if we give cout<<p it will print the address, value won't print.... p has the base addr; q... (1 Reply)
Discussion started by: sarwan
1 Replies

2. Programming

file pointer

hi all: bankpro again, i want to open a file and close it after an hour (i.e open and close the file ptr) In the mean time i will be executing my jobs using the shell (CommandInterpreter). plz help... :cool: (3 Replies)
Discussion started by: bankpro
3 Replies

3. Programming

file pointer

what is the difference between a file pointer and a file descriptor. (1 Reply)
Discussion started by: bankpro
1 Replies

4. Programming

Regarding char Pointer

Hi, char *s="yamaha"; cout<<s<<endl; int *p; int i=10; p=&i; cout<<p<<endl; 1) For the 1st "cout" we will get "yamaha" as output. That is we are getting "content of the address" for cout<<s. 2) But for integer "cout<<p" we are getting the "address only". Please clarify how we are... (2 Replies)
Discussion started by: sweta
2 Replies

5. Programming

far pointer

what is far pointer in C (1 Reply)
Discussion started by: useless79
1 Replies

6. Shell Programming and Scripting

Perl how to move pointer to previous line in a txt file?

I have a text file that has blocks of text. Each block starts with ### and ends with End_###. I wrote a perl script to search a string from line 2 (ignore any line starts with ###) of each block if matched, need to print that whole block. According to the input file in below, it will print... (5 Replies)
Discussion started by: tqlam
5 Replies

7. Programming

pass a pointer-to-pointer, or return a pointer?

If one wants to get a start address of a array or a string or a block of memory via a function, there are at least two methods to achieve it: (1) one is to pass a pointer-to-pointer parameter, like: int my_malloc(int size, char **pmem) { *pmem=(char *)malloc(size); if(*pmem==NULL)... (11 Replies)
Discussion started by: aaronwong
11 Replies

8. Programming

C dynamic pointer

Hi, Can anyone tell me how i can declare and allocate dynamically an array of pointers to structured type?? Is declaration something like this:? struct_name ** array; (1 Reply)
Discussion started by: littleboyblu
1 Replies

9. Programming

Pointer Arithmetic In C

I have a fundamental question on C pointer arithmetry.. Suppose i have a c string pointer already pointing to a valid location, Can I just do a charptr = charptr +1; to get to the next location, irregardless if my program is 32 or 64 bits? or should i do it this way: charptr =... (1 Reply)
Discussion started by: Leion
1 Replies

10. Programming

Pointer to pointers

Hi guys, I'm trying to understand pointers in C and made a simple example and I've problems with It. Can someone help? #include <stdio.h> #include <stdlib.h> #include <assert.h> int f1(char **str_); int main(int argc, char **argv) { char *str = NULL; f1(&str); ... (3 Replies)
Discussion started by: pharaoh
3 Replies
Dancer::Config::Object(3pm)				User Contributed Perl Documentation			       Dancer::Config::Object(3pm)

NAME
Dancer::Config::Object - Access the config via methods instead of hashrefs DESCRIPTION
If "strict_config" is set to a true value in the configuration, the "config()" subroutine will return an object instead of a hashref. Instead of this: my $serializer = config->{serializer}; my $username = config->{auth}{username}; You get this: my $serializer = config->serializer; my $username = config->auth->username; This helps to prevent typos. If you mistype a configuration name: my $pass = config->auth->pass; An exception will be thrown, tell you it can't find the method name, but listing available methods: Can't locate config attribute "pass". Available attributes: password, username If the hash key cannot be converted into a proper method name, you can still access it via a hash reference: my $some_value = config->{'99_bottles'}; And call methods on it, if possible: my $sadness = config->{'99_more_bottles'}->last_bottle; Hash keys pointing to hash references will in turn have those "objectified". Arrays will still be returned as array references. However, hashrefs inside of the array refs may still have their keys allowed as methods: my $some_value = config->some_list->[1]->host; METHOD NAME DEFINITION
We use the following regular expression to determine if a hash key qualifies as a method: /^[[:alpha:]_][[:word:]]*$/; Note that this means "naA~Xve" (note the dots over the i) can be a method name, but unless you "use utf8;" to declare that your source code is UTF-8, you may have disappointing results calling "config->naA~Xve". Further, depending on your version of Perl and the software to read your config file ... well, you get the idea. We recommend sticking with ASCII identifiers if you wish your code to be portable. Patches/suggestions welcome. AUTHOR
This module has been written by Alexis Sukrieh <sukria@cpan.org> and others, see the AUTHORS file that comes with this distribution for details. LICENSE
This module is free software and is released under the same terms as Perl itself. SEE ALSO
Dancer and Dancer::Config. perl v5.14.2 2012-03-31 Dancer::Config::Object(3pm)
All times are GMT -4. The time now is 07:43 PM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy