f



Pointer to pointer Vs References to Pointer

Q . When to use use pointer-to-pointer and reference-to-pointer to
modify a pointer passed to a function ?

According to me

Which is better : double pointers  OR  Reference to Pointer ?
There is no clear advantage and depends on programmer =91s choice or
habit . As Nilesh mentioned  =94 Reference to pointer=94 makes code easy
But  Pointer to pointer makes code easy to understand. So one can use
any one .

Why Pointer to Pointer is generally used ?
1.	Pointer to pointer can be used in C and C++  but reference to
pointer is limited to C++.

	   a. Generally people start learning programming from C . So they
get used to pointer to pointer.
                   b.Pointer to Pointer usage makes project porting in
C or C++ easy.

2.	Generally libraries uses  pointer to pointer approach like COM uses
pointer to pointer for CoCreateInstance or QueryInterface.


Fourm : Could you please let me know if these are the only reasons or
i am missing something?

Thanks
Vikrant

Example

#include "stdafx.h"

void Ref2Poi(int * &p)
{
      *p =3D 10;
}

void Poi2Poi( int ** p)
{
     **p =3D 10;
}

int _tmain(int argc, _TCHAR* argv[])
{
      int i =3D 13;
      int j =3D 14;

       int *p =3D &i;
      int *q =3D &j;

      Ref2Poi(p);
      Poi2Poi(&q);

      return 0;
}
0
7/2/2009 6:50:02 AM
comp.lang.c++ 49423 articles. 7 followers. Post Follow

5 Replies
788 Views

Similar Articles

[PageSpeed] 11

"bansalvikrant@gmail.com" <bansalvikrant@gmail.com> writes:

> Q . When to use use pointer-to-pointer and reference-to-pointer to
> modify a pointer passed to a function ?
>
> According to me
>
> Which is better : double pointers  OR  Reference to Pointer ?
> There is no clear advantage and depends on programmer =E2=80=98s choice or
> habit . As Nilesh mentioned  =E2=80=9D Reference to pointer=E2=80=9D make=
s code easy
> But  Pointer to pointer makes code easy to understand. So one can use
> any one .
>
> Why Pointer to Pointer is generally used ?
> 1.	Pointer to pointer can be used in C and C++  but reference to
> pointer is limited to C++.
>
> 	   a. Generally people start learning programming from C . So they
> get used to pointer to pointer.
>                    b.Pointer to Pointer usage makes project porting in
> C or C++ easy.
>
> 2.	Generally libraries uses  pointer to pointer approach like COM uses
> pointer to pointer for CoCreateInstance or QueryInterface.
>
>
> Fourm : Could you please let me know if these are the only reasons or
> i am missing something?

The main difference between them, is at the call site:

      Output parameter     Input parameter

- with a pointer:
=20=20
          xyz(&p);            uvw(p);

- with a reference:

          xyz(p);             uvw(p);


We can see that with reference, we don't see whether the argument will
be modified or not.  On the other hand, with pointers, we have an
explicit notation & to indicate that the argument might be modified by
the function.


For this reason, some prefer to use pointers for output parameters.

I've been formed early with pascal, so I don't mind references, and
lately with lisp, so I don't mind output parameters: use a more
functional style, do not write procedures with side effects, and use
multiple return values if need be.  That is, write:

- with functional style:

         p=3Dxyz(p);           uwv(p);




(Also, don't use pointers, but smart pointers, and don't name the
template SmartPtr, or Pointer, but Object:

    Object<Person> p=3Dnew Person("Joe","Doe");
    p->increaseSalary(2000);
    Object<Person> surgeon=3Dp->findGoodSurgeon();
    p=3Dsurgeon->operate(p);

).

--=20
__Pascal Bourguignon__
0
pjb (7869)
7/2/2009 8:51:03 AM
On Jul 2, 2:50=A0am, "bansalvikr...@gmail.com" <bansalvikr...@gmail.com>
wrote:
> Q . When to use use pointer-to-pointer and reference-to-pointer to
> modify a pointer passed to a function ?

If you structure your code so that the assignment doesn't happen until
the function is about to return, then there's not much difference in
readability between the two, e.g.:


void PtrToPtr(int **ppint) {
  int *pint =3D new int[50];
  pint[0] =3D 1234;
  // etc etc
  *ppint =3D pint;
}

void RefToPtr (int *&ppint) {
  int *pint =3D new int[50];
  pint[0] =3D 1234;
  // etc etc
  ppint =3D pint;
}


The only difference is the parameter type and the final assignment.
Also, structuring your code this way means that if your function
returns/throws early because of an error, you can leave the input
value unmodified, which is sometimes desirable. It can also make
cleanup and exception-safety very easy, consider:

void PtrToPtr (Object **pobj) {
  std::auto_ptr<Object> obj(new Object);
  // do some stuff that may throw, then:
  *pobj =3D obj.release();
}

void RefToPtr (Object *&pobj) {
  ... same code, then ...
  pobj =3D obj.release();
}

The unwanted Object is automatically freed on early return/throw,
until it is actually assigned to the output parameter.

Then, which way you do it is just a merely of personal style
preference.

That said, I sort of agree with Pascal's reply in that using a
reference to pointer might obscure the fact that it's an output
parameter at the call site. On the other hand, a simple check of the
function declaration would show that it accepts a non-const reference,
and I any non-const reference parameter passed to a function should
generally be assumed to be a candidate for modification, IMHO.


Commenting on some of the other stuff you wrote:

> Why Pointer to Pointer is generally used ?
> 1. =A0 =A0 =A0Pointer to pointer can be used in C and C++ =A0but referenc=
e to
> pointer is limited to C++.

I don't think this is a good line of reasoning without context. It's
true that references can only be used in C++ but that is only a
disadvantage if your code is also meant to be compiled by a C compiler
-- but in that case, you're probably coding in C, not C++. Just use
whatever features the language you are actually coding in supports. If
you are coding in C++ then there's no reason to stick to C because,
hey, you *are* writing C++ after all, not C.


> =A0 =A0 =A0 =A0 =A0 =A0a. Generally people start learning programming fro=
m C . So they
> get used to pointer to pointer.

Incidentally, I taught myself C using a C++ compiler, and it really
made a mess of me! :-) But again, I also don't think this is a very
compelling reason. Whether or not you are used to doing something some
way in C should have no bearing on the way you do it in C++, as they
are entirely different languages, even though they happen to share a
lot in common.


> =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0b.Pointer to Pointer usage makes p=
roject porting in
> C or C++ easy.

If you are porting from C to C++ then, of course, you wouldn't be
using references anyways.

If you are porting from C++ to C then you really have to ask yourself
if you are doing the right thing. I can't think of any situations
where you'd have to do that off the top of my head... maybe if you're
porting to a platform that doesn't have a C++ compiler available? But
what kind of application would be written in C++ then, surprise,
ported to a platform without a C++ compiler?


> 2. =A0 =A0 =A0Generally libraries uses =A0pointer to pointer approach lik=
e COM uses
> pointer to pointer for CoCreateInstance or QueryInterface.

This is not true. It is more accurate to say that C libraries use
pointers to pointers. Also, about COM... COM itself doesn't specify
references or pointers or anything like that. COM has bindings in many
languages, e.g. VisualBASIC (where pointers vs. references don't apply
at all). You're probably used to seeing the C bindings. Windows API
functions like CoCreateInstance do not use references because they are
designed to be used by both C and C++ applications. Also COM doesn't
make any statements about class hierarchy relations, hence all the
casts to (void **) in QueryInterface et. al, you can't handle that
with only references.

You may want to have a read here: http://en.wikipedia.org/wiki/Component_Ob=
ject_Model

Another quality of references is the inability to represent NULL as a
value.


> Fourm : Could you please let me know if these are the only reasons or
> i am missing something?

None of those are reasons, I don't think. In the implementations of
the functions it does not make much of a difference. When the
functions are called, sometimes pointers-to-pointers are clearer,
sometimes maybe not, personally I look at const vs. non-const rather
than the presence of an "&". Reasons related to C are not generally
sound as C is a different language. I think a lot of it is style.

I also think that consistency is the most important thing. Pick one or
the other. If you have a strange mix of both pointers-to-pointers and
references-to-pointers serving the same purpose, *then* readability
becomes an issue.


J


> Thanks
> Vikrant
>
> Example
>
> #include "stdafx.h"
>
> void Ref2Poi(int * &p)
> {
> =A0 =A0 =A0 *p =3D 10;
>
> }
>
> void Poi2Poi( int ** p)
> {
> =A0 =A0 =A0**p =3D 10;
>
> }
>
> int _tmain(int argc, _TCHAR* argv[])
> {
> =A0 =A0 =A0 int i =3D 13;
> =A0 =A0 =A0 int j =3D 14;
>
> =A0 =A0 =A0 =A0int *p =3D &i;
> =A0 =A0 =A0 int *q =3D &j;
>
> =A0 =A0 =A0 Ref2Poi(p);
> =A0 =A0 =A0 Poi2Poi(&q);
>
> =A0 =A0 =A0 return 0;
>
> }
>
>

0
7/2/2009 9:23:24 AM
On Jul 2, 5:23=A0am, JC2 <jason.cipri...@gmail.com> wrote:
> Then, which way you do it is just a merely of personal style
> preference.

I'm sorry, it appears I was drunk when I typed that. In the last 60
seconds I've sobered up considerably. It was supposed to say something
like:

"Then, which way you do it is merely a matter of personal preference."
0
7/2/2009 9:26:18 AM
<bansalvikrant@gmail.com> wrote in message =
news:74401a9a-1989-45a7-8961-160139c0c688@x5g2000yqk.googlegroups.com...
> Q . When to use use pointer-to-pointer and reference-to-pointer to
> modify a pointer passed to a function ?

> Which is better : double pointers  OR  Reference to Pointer ?
> There is no clear advantage and depends on programmer =91s choice or
> habit . As Nilesh mentioned  =94 Reference to pointer=94 makes code =
easy
> But  Pointer to pointer makes code easy to understand. So one can use
> any one

Is a pointer much different from e.g. int in this choice?
The disadvantage when using pointer to pointer is that a check is needed =
for a NULL pointer.
When using references, the compiler performs this check already.
So, I use pointer to pointer in cases where it is useful to call the =
function with a NULL pointer,
if the function should never be called with a NULL pointer, I use =
references.
I find references easier to understand than pointer to pointers.
0
F.Zwarts (291)
7/2/2009 10:20:58 AM
bansalvikrant@gmail.com wrote:
> Q . When to use use pointer-to-pointer and reference-to-pointer to
> modify a pointer passed to a function ?

I wouldn't think there's a different answer than to the
same question about pointer/reference to 'int':
If an object /must/ be passed to the function, use a
reference, if the function might be called without an
object, use a pointer, so that callers can pass 'NULL'.

> [...]

Schobi
0
spamtrap2669 (335)
7/3/2009 5:37:52 PM
Reply:

Similar Artilces:

pointers, pointers, pointers...
Hi There, I came up with following sample code to demonstrate my issue: #include <18F87K22.h> #device HIGH_INTS=TRUE, adc=16, ICD=TRUE #fuses NOWDT //No Watch Dog Timer #fuses WDT128 //Watch Dog Timer uses 1:128 #fuses HSM //Hi-Speed crystal oscillator #fuses NOBROWNOUT //No brownout reset #fuses NOPLLEN //No PLL enabled #fuses BBSIZ1K //1K words Boot Block size #fuses NOXINST //Extended set extension and Indexed typedef struct{ int8 foo, test; } Th...

Pointers, pointers, pointers.......
Hi group. Asking again some help to better understand the basic principles of RPL.... In RPLMAN they say: >>>In the most general definition of RPL, I is an object pointer >>>pointing to a composite object that is the top of a stack of >>>composite objects called the runstream. >>>R points to the rest of the runstream stack. What is really meant by *the rest of the runstream* ? Is R pointing to the object right after the one pointed by I? Is R pointing to the rest of the stack *as a whole* (how's it possible?) Anything else I didn't catch? >>...

pointer vs pointer to pointer
AIM: To write a queue with 3 operations. WHAT I GOT: It works PROBLEM: Have a question: Why do "pointer to pointer" in enqueue() and "a pointer" to deleteElement() both work fine ? Will enqueue() work fine if I pass just "a pointer" to it ? Will deleteElement() work fine if I pass "pointer to pointer" ? /* A queue implementataion with the operations that I need: * (1) Add element to the front of the queue * (2) remove an element with a unique ID (string constant) * (3) compare 2 elements (string comparison) * (4) print queue * ...

Pointer to pointer or reference to pointer
The way I understand it Reference To pointer as function parameter eg. void RP(int *&rpMem) {} rpMem is actually an alias for the pointer outside the function right? So I would access it exactly with the same syntax just like outside pointer right? e.g. void RP(int &*rpMem) { *rpMem = 125; rpMem++; } int Mem = 123; int *pMem = &Mem; // pMem = for example 5000 *pMem = 124; // Mem = 124; RP(pMem); // Mem = 125, pMem = 5004 Is the above correct? A <a@a.a> wrote: > e.g. > > void RP(int &*rpMem) > { > *rpMem = 125; > rpMem++; &g...

pointer to an array vs pointer to pointer
Consider the following program x.c: #include <stdlib.h> #include <stdio.h> int main() { int x[10]; int **pp = &x; pp = NULL; // just to get rid of compiler warning. return EXIT_SUCCESS; } When I compile this program under gcc 3.4.3 as gcc -std=c99 -pedantic -Wall -Wextra x.c it merely generates the warning x.c: In function `main': x.c:7: warning: initialization from incompatible pointer type I thought the line int **pp = &x; is in error because of different pointer types involved in the assignment - '&x' is a point...

Matlab, pointers and pointers to pointers
Matlab stores matrices using simple pointers in order to allocate memory. Using pointers to pointers, according to my experience, we could obtain the following benefits: - code would run faster (I think up to 70%) - memory would be allocated in a better way Why this solution is not used? There are some limitations? Luigi Luigi: <SNIP longing for pointers - not to heaven - to memory... > Why this solution is not used? There are some limitations... <luigi> a fact of life that we all have to live with: it IS just NOT happening... -or- at least it is not happening since 1984... d...

Pointer-to-pointer-to-pointer question
The code example below shows the dynamic allocation of a 2D array. I must admit that it took quite a while for me to get there (I already have another posting to that effect), but I am glad that I finally got it working. Now here's the problem: I am able to get the 2D array dynamically allocated correctly as long as I am doing it "in-line" (i.e. without invoking any function). The moment I try to do it in another function, I get a core dump. Any help will be appreciated. Since this function is expected to update a pointer-to-pointer type, I am actually passing the pointer-...

C to M2 ... Any pointers on Pointer to Pointer conversion?
Hi, I'm trying to do up some socket libraries for XDS. So I'm trying to convert C programs to Modula-2 to test them. In the book Beginning Linux Programming by Neil Matthew and Richard Stones (Wiley) I'm stumped by some code relating to Pointers to Pointers. The original C source is at http://linux.aliboom.com:8000/getname.c.html and since I don't know how well what I am about to paste will be formatted, there is also a copy at http://linux.aliboom.com:8000/getname.mod.html I have two questions, the first one deals with the C code shown shortly after the firs...

pointer of pointer
Hi I have a structure, B_t is another structure typedef struct{ int len; unsigned char code[12]; B_t *b; }A_t Now I need to pass A_t into a function to evaluate I use pointer of pointer void evaluate(A_t **a) My question is how to evaluate the component of this structure (*a)->b??? seems not right Thanks a lot! <qianz99@gmail.com> wrote in message news:1178915812.306611.242380@y80g2000hsf.googlegroups.com... > Hi > > I have a structure, B_t is another structure > > typedef struct{ > int len; > unsigned char code[12]; > B_t *b; > }A_t > >...

Pointers pointers.
I thought I could assign an array of chars to a pointer to pointer. However, when I do the following: #include <stdio.h> int main(void) { char buff[] ="test"; char **output = &buff; return 0; } I get: $gcc -g ptr.c -o ptr ptr.c: In function `main': ptr.c:5: warning: initialization from incompatible pointer type What am I doing wrong here? Chad Chad wrote: > I thought I could assign an array of chars to a pointer to pointer. > However, when I do > the following: > > #include <stdio.h> > > int main(void) { > char buf...

pointers to pointers
Hi, i understood what pointers are and all stuff, and now i'm at the part with pointers to pointers and my book doesn't really help on this issue. let be: int a,*p,**q; how to make use of **q,*q and q ? Which who's address and/or who's value contains. I would like some examples like p=&a;// p contains the address of a and *p contains it's value but regarding **q,*q respectively q. Thanks. apropo wrote: > Hi, > i understood what pointers are and all stuff, and now i'm at the part > with pointers to pointers and my book doesn't really help on...

More on pointers to pointers.
I suspect I'm missing a broader concept here. Okay, given the following code: #include <stdio.h> int main(void) { char *ptr[] = {"Garbage", "test", "work"}; char **arg; arg = ptr; printf("The string is: %s\n", ptr[1]); return 0; } Why am I not allowed to do something like: arg = &ptr; ? I guess even more to the point, why is this legal? arg = &(*ptr) ; Chad Chad said: > I suspect I'm missing a broader concept here. Okay, given the following > code: > > #include <stdio.h> > > in...

pointer to a pointer
My situation: I have a function that takes a pointer to an FSref as an argument. In the body of the function is a function call that also takes a pointer to an FSRef. I need to pass my original FSRef, but since I have only a pointer to it, I am assuming I need to dereference it twice when I call the second function. However, using something like &&myFSRef in the second function doesn't work. Can anyone tell me the proper way to do this? Thanks. In article <1105802448.cd52b3255e6c95476ce23f7be215a6a3@teranews>, Steven Daedelus <sdaedelus@ira.gov> w...

Pointers and References (and References to Pointers)
Hello again, I have a bit of a strange problem here. This code works OK: class foo { public: foo(int **ref): m_ref(ref) {} private: int **m_ref; }; int main() { int i = 1; int *iptr = &i; foo bar(&iptr); return 0; } but this code does not: class foo { public: foo(int& *ref): m_ref(ref) {} private: int& *m_ref; }; int main() { int i = 1; foo bar(&i); return 0; } I get this error when I compile it: $ g++ -o test test.cc test.cc:4: error: cannot declare pointers to references test.cc:8: error: cannot declare pointers to references Th...

pointer to pointer
hi could someone tell me a good website that explains pointer to pointers well. Not just simple stuff like 2d arrays passing , or pointing to another int variab.le jagguy wrote: > hi > could someone tell me a good website that explains pointer to pointers well. > Not just simple stuff like 2d arrays passing , or pointing to another int > variab.le > > Not sure that there is one - how hard can it be really. *p returns a reference to whatever p points to. If p points to a pointer, **p returns a reference to whatever that pointer points to. There's one for func...

pointer of pointer
Hello, I have to make an array which size of the lines depends of the line. I am sure I am not clear so here is an exemple of what I mean : a is an array of n lines each line contain a different number of elements I have tried to implement something like this a=PTRARR(n) FOR i=0,n-1 DO BEGIN a(i)=Ptr_New ENDFOR First I am not sure it is the best way to compute this, second if yes I don't how to implemente the value of the "a(i,j)" element. If somebody can help me... Best regards, Claire Hey Claire, If you absolutely must have each element of "a" be an array...

Pointers for these pointers...?
Hi Everyone: I'm trying to develop a property list to include as metadata about my object classes. i.e. I want each class I'm developing to include a PropertyList which will contain ObjectProperty pointers. ObjectProperty is a class containing the typeid.name() of a type as it's ObjectType as well as an ObjectName and ObjectDescription. Basically 3 strings of metadata describing each of a class' member variables (and hopefully functions) so that the class can report to a query from another class what properties it has available for access at run time. Here is what I have and t...

pointer to pointer
Its just a very simple and basic program to learn exactly what is described in comments here. Can you provide a better (and short) exercise ? /* A program to learn how to use a pointer to a pointer. Here we take an array of char pointers. A char* in the array, of course, points * to some char. Array has only one element. We change the value of char pointed by array's element using a function. * * VERSION 0.0 */ #include <stdio.h> void replace_char_value(char* [], char); int main(void) { char* arrc[2] = {0}; char c = 'c'; arrc[0] = &c;...

pointer to pointer
I have only used pointer to a pointer while manipulating arrays of arrays. I have not seen any C++ libraries that use pointer to a pointer as a function parameter. But I have seen it used in COM. If we want the function to create a new object and allow the passed in pointer to point to the object created we can pass a pointer to the reference. Is there anything special about COM that it needs pointer to a pointer. Is this becuase that COM can be used from C as well and we don't have references in C. In what other circumstances pointer to pointer can be used. Why don't we never see poi...

Pointer to Pointer or not?
Hi I am creating my own Queue class to learn about Queues and pointers. I have come across a question of two styles and I don't know if there are any dangers associated with them. I coded my remove function as follows template <class T> bool adsQ<T>::Remove(T* theData) { Qnode<T>* removeNode = 0; if (true == isEmpty()) { //cout << "False" << endl; return false; } else { /* What I am trying to achive here is to change the data pointed to by theData to the data pointed to by pData.*/ *theData =*(pHead->pData); //Data exchan...

Pointers to pointers
How can you use a "pointer to a pointer" as a two dimensional array using 'new' and 'delete' rather than 'malloc' and 'free'? Thanks, Jonas Jonas Cord wrote: > How can you use a "pointer to a pointer" as a two dimensional array > using 'new' and 'delete' rather than 'malloc' and 'free'? Pretty much the same. int main() { int** data; data = new int*[100]; for (int i = 0; i < 100; ++i) data[i] = new int[100]; //use it for (int i = 0; i < 100; ++i) delete []...

c++: pointers to pointers
Hi, I have an array of pointers defined as such: myArray** ptr = new myArray[10]; for some reason i get a compile time error stating there is no default constructor for myArray. The problem is that i should not need to define one since myArray is a pointer to a pointer and so should not have a default constructor - its a primitive data type and not an object. Any help appreciated. Regards, A A wrote in news:3f9e5e27_1@news.iprimus.com.au: > Hi, > > I have an array of pointers defined as such: > > myArray** ptr = new myArray[10]; myArray** ptr = new myArray *[10]; &g...

Pointer to a pointer to a pointer to a member function
Hi, I'm having a problem compiling the following snippet with MSVC++ 7.1 and I'm not sure if it is a compiler bug? (or I am being stupid) struct Vector3 { float x, y, z; }; void blah() { static Vector3 (Vector3::*function)(float); static Vector3 (Vector3::**_function)(float) = &function; /*static*/ Vector3 (Vector3::***__function)(float) = &_function; *__function = &function; } If I uncomment the 'static' qualifier it then compiles fine? (Or if I change the return type of the function pointers to an atomic type such as &#...

Once again pointer to first element vs pointer to array cast to pointer to element
I know that this topic has been discussed a lot, still I'd appreciate a clear cut (and correct) answer: I pass a multidimensional array to a function, which is defined as int f(int a[10][10]) { int *b=(void*)a; int *c=a[0]; /*...*/ } Now the questions come: - Is it guaranteed that b and c points to the same object (or is this implementation defined)? - Is it always true that a[1][1] refers to the same object as c[11] ? (There is no hole) - Does dereferencing b violate any aliasing rule? Thanks Szabolcs Szabolcs Borsanyi wrote: > I know that this topic has been discussed a lot, s...

Web resources about - Pointer to pointer Vs References to Pointer - comp.lang.c++

European Terrestrial Reference System 1989 - Wikipedia, the free encyclopedia
The European Terrestrial Reference System 1989 ( ETRS89 ) is a ECEF (Earth-Centered, Earth-Fixed) geodetic Cartesian reference frame , in which ...

Tony Abbott, Mike Baird write references for Bronwyn Bishop Liberal preselection rival
Bronwyn Bishop's preselection chances are dealt a blow, with Tony Abbott and Mike Baird writing references in support of a Liberal Party official ...

Shane Smith Also Dropped a David Carr Reference
On The Drudge Report and elsewhere, much is being made today about the fact that Shane Smith drops 52 F-bombs in this week’s Hollywood Reporter ...

Canonical chooses Linux-friendly Dragonboard 410c as Ubuntu Core on ARM 64-bit reference
... only dream about with its venerable Windows. Even though Linux can run on damn-near anything, it is beneficial for developers to have a reference ...

All of The Simpsons’ best movie references compiled in one video
After 27 seasons on the air, it only makes sense that The Simpsons would reference every show, movie, book and pop culture artifact that it possibly ...

Here are all the references in the new Beyoncé video that people are calling 'anti-police'
... to black people, as well as Beyoncé's own success personally. There's a lot to unwrap in "Formation," so we've broken down many of the references ...

Deadpool's Best Easter Eggs And Pop Culture References
... in for a very different superhero movie when Deadpool finally made it to the screen. One full of violence, vulgarity, and pop culture references, ...

Worst passwords of 2015: Star Wars references sneak onto list
Enough with "123456" already! SplashData's annual list of the worst passwords in use includes some old favorites and some new sci-fi-inspired ...

The Flash: Easter Eggs and DC Comics References In "Welcome to Earth-2"
Tonight was the most Easter egg-heavy episode of The Flash to date.Let's get right into it [...]

Video: Bernie Sanders Shreds Congressman Over 'Homos In The Military' Reference
Bernie Sanders ripped future convict Duke Cunningham for referring to gays as "homos" during a debate on the House floor. Sanders and Cunningham ...

Resources last updated: 2/24/2016 6:04:56 PM