⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 lesson6.txt

📁 C++ is a programming language. It is a programming language of many different dialects, just like
💻 TXT
字号:
				Lesson 6: An introduction to pointers
				

Welcome to the sixth in my series of tutorials.  This is one about a topic that you may or
may not have already heard about...pointers.  What are they, what do they do, why do we
care? First, why do we care.


We care about pointers because they allow access to memory, the also make array-access
faster, they are also somewhat necessary to understand some functions.  Most importantly,
you will see them a lot in other people's code.  You may not need to use them much, but it
will be tremendously important to understand them.


Second, what do they do.  Well, I might as well address this issue as well as what they are
at the same time.  Pointers are what they sound like...pointers.  They point to locations
in memory.  Picture this: a big jar that holds one thing, the name of another jar.  In the
other jar is the value of an integer.  The jars are memory locations.  The jar that holds
the name of the other jar is a pointer.  It points to the other drawer.


How can you use this?  Well, look at this little piece of code:


#include <iostream.h>


void main()
{
  int x;
  int *pointer;
  pointer=&x;  
  cin>>x;
  cout<<*pointer;
}


Guess what!  The cout outputs the value in x.  Why is that?  Well, look at the code.  The
integer is called x.  Then a pointer to an integer is defined as pointer.  The astrick(*)
symbol means that it is a pointer.  Then I give the memory location of x to pointer by
using the ampersand(&) symbol.  It gives the memory location of the variable it is in front
of.  For example, if the jar that had an integer had a ampersand in it it would output its
name, or location.


Then the user inputs the value for x.  Then the cout uses the * to put the value stored in
the memory location of pointer.  Huh?  Picture the jars again.  If the jar with the name of
the other jar in it had a * in front of it it would give the value stored in the jar with
the same name as the one in the jar with the name.  It's not too hard, the * gives the
value in the location.  The unastricked gives the memory location.
	
I hope this has been at least an interesting introduction to pointers.  I do not suggest
that you play around with them too much as you can do unpleasant things on your computer,
but you now should have a better understand of what they are.


Note: My homepage is http://www.cprogramming.com.  My email is lallain@concentric.net.  Please
email me with comments and or suggestions.  If you want to use this on your own site please
email me and add a link to http://www.cprogramming.com.  Thanks :)

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -