Yes, a char is a character. But char*, is a pointer to an character. And char** is a pointer to a pointer to a character (array).
Ok some examples:
in Perl:
#!usr/bin/perl -w
use warnings;
my @list = ("a1", "b23", "c45", "d1");
print join (" ",@list),"\n";
#prints: a1 b23 c45 d1
In Perl, the list "knows" how big it is.
This is not true in C! In C we have to do stuff to help things out! Like this:
include <stdio.h>
int main ()
{
char *list[] = {"a1", "b23", "c45", "d1",'\0'};
// list is an array of pointers to chars
char **mover;
for (mover=list; *mover ;mover++)
printf ("%s ",*mover);
printf("\n");
}
// prints: a1 b23 c45 d1
For me, the difference is obvious! The Perl version is cool!
The alternative way in C would be to keep track of the number of items in the list array instead of a NULL value sentinel (and yes, there are more ways than than one I showed above). All ways are a pain in the rear compared with Perl!
Perl lists may be changed at will just like in C. I don't understand this comment: "lists are unmutable". Please explain, I just don't understand what you mean.
Posts are HTML formatted. Put <p> </p> tags around your paragraphs. Put <code> </code> tags around your code and data!
Titles consisting of a single word are discouraged, and in most cases are disallowed outright.
Read Where should I post X? if you're not absolutely sure you're posting in the right place.
Please read these before you post! —
Posts may use any of the Perl Monks Approved HTML tags:
- a, abbr, b, big, blockquote, br, caption, center, col, colgroup, dd, del, details, div, dl, dt, em, font, h1, h2, h3, h4, h5, h6, hr, i, ins, li, ol, p, pre, readmore, small, span, spoiler, strike, strong, sub, summary, sup, table, tbody, td, tfoot, th, thead, tr, tt, u, ul, wbr
You may need to use entities for some characters, as follows. (Exception: Within code tags, you can put the characters literally.)
| |
For: |
|
Use: |
| & | | & |
| < | | < |
| > | | > |
| [ | | [ |
| ] | | ] |
Link using PerlMonks shortcuts! What shortcuts can I use for linking?
See Writeup Formatting Tips and other pages linked from there for more info.