Code examples of manipulating an array of pointers. #include <stdio.h> #include <stdlib.h> #include <string.h> #define MAXLIST 10 struct ipList { int id; char *name; char *ip; }; struct ipList **getList( void ); void printList( struct ipList **list ); int main( void ) { struct ipList **theList; theList = getList( ); printList( theList ); return 0; } struct ipList **getList( void ) { struct ipList **list; int i; list = malloc( MAXLIST * sizeof( struct ipList * ) ); i = 0; while ( i < MAXLIST ) { list[ i ] = malloc( sizeof( struct ipList ) ); list[ i ]->id = i; list[ i ]->name = "citibank.co.cx"; list[ i ]->ip = "209.249.147.15"; i++; } return ( list ); } void printList( struct ipList **list ) { int i = 0; while ( i < MAXLIST ) { printf( "%s - %s", ( list[ i ]->name ), ( list[ i ]->ip ) ); i++; } }

we can change the function getList slightly:

struct ipList **getList( void ) { static struct ipList *list[ MAXLIST ]; int i; //list = malloc( MAXLIST * sizeof( struct ipList * ) ); i = 0; while ( i < MAXLIST ) { list[ i ] = malloc( sizeof( struct ipList ) ); list[ i ]->id = i; list[ i ]->name = "citibank.co.cx"; list[ i ]->ip = "209.249.147.15"; i++; } return ( list ); }

or we could have the main array created in main like this:

#include <stdio.h> #include <stdlib.h> #include <string.h> #define MAXLIST 10 struct ipList { int id; char name[ 35 ]; char ip[ 15 ]; }; void getList( struct ipList *list[ ] ); struct ipList *makeIP( void ); void printList( struct ipList *list[ ] ); int main( void ) { struct ipList *theList[ MAXLIST ]; getList( theList ); printList( theList ); return 0; } void getList( struct ipList *list[ ] ) { int i = 0; while ( i < MAXLIST ) { list[ i ] = makeIP( ); list[ i ]->id = i; strcpy( ( list[ i ]->name ), "citibank.co.cx" ); strcpy( ( list[ i ]->ip ), "209.249.147.15" ); i++; } } struct ipList *makeIP( void ) { struct ipList *temp; temp = malloc( sizeof( struct ipList ) ); return ( temp ); } void printList( struct ipList *list[ ] ) { int i = 0; while ( i < MAXLIST ) { printf( "%s - %s", ( list[ i ]->name ), ( list[ i ]->ip ) ); i++; } }

posted by dharh 9:59 PM Oct 2nd, 2006 via idt


Here's a cool report from Gina Trapani over at lifehacker about Yahoo! Open Hack Day '06. It's pretty interesting. You could say Yahoo! Open Hack Day is like Google Code Jam.

posted by dharh 12:56 PM Oct 2nd, 2006 via idt


Sparce links has been updated to the lasted version. It now uses del.icio.us to populate its links, which pretty much now makes it a UI for del.icio.us. All that's left to do is keeping persistant information about link to count clicks so the links can be ordered by most used.

posted by dharh 12:53 AM Oct 2nd, 2006 via idt


Clinton in good form tells Chris Wallace and Fox News whats what.


posted by dharh 3:43 PM Sep 25th, 2006 via idt


Too awesome.


posted by dharh 10:17 AM Sep 25th, 2006 via idt


Found a cool article about what really slows Windows down.

posted by dharh 4:26 PM Sep 23rd, 2006 via idt


I'm sick and tired of the Music Industry. The CD is dead, long live Vinyl. Hurry and catch up with the rest of us: Microsoft, Real, Apple. You can't expect to milk us forever with your restrictive DRM infected media. Stop hurting the many of us who are legitimate by preventing those few who would use DRM free media to pirate. If your thinking sure the CD is dead we can still get you with our online services, statistics show that most music is still bought hard copy, from Walmart no less. Even if that is still a CD, its inevitable, the CD is dead. The fastest growing online music retailer is Emusic, a DRM free service. Not after the success of Vinyl and CDs which were easy to share whenever we wanted however we wanted will we go to restricted media. We will leave you in the dust if we have to.

Update 2007-10-02: Added link to Slashdot story.


posted by dharh 11:54 PM Sep 19th, 2006 via idt


« Previous 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 Next »

2024: 1
2023: 4 2 1
2022: 5 3
2011: 5 3 1
2010: 12 9 7 1
2009: 12 11 8 5
2008: 12 5 4 3 2 1
2007: 12 11 10 9 8 7 6 5 4 3 2 1
2006: 12 11 10 9 8 7 6 5 4 3 2 1
2005: 12 10 7 6
2004: 10 9 6 5 4 3 2 1