Ò׽ؽØÍ¼Èí¼þ¡¢µ¥Îļþ¡¢Ãâ°²×°¡¢´¿ÂÌÉ«¡¢½ö160KB

Õ»µÄCʵÏÖ(stack)

rows="2" cols="20" id="ctl00_ctl00_cphContent_cphDoc_EntryEditor1_richTextEditor" class="mceEditor" style="height:450px;width:100%;">
Õ»ÊÇÊý¾Ý½á¹¹ÖÐ×î»ù´¡Ò²ÊÇ×î¾­µäµÄÊý¾Ý½á¹¹£¬ÎÞÂÛÔÚÓ¦Óû¹ÊDzÙ×÷ϵͳÖоù¿ÉÒÔ¿´µ½ÆäÉíÓ°¡£Õ»ÊÇÒ»ÖÖÌØÊâµÄ
ÏßÐÔ±í£¬¼´ÏÞÖÆÔÚ±íµÄÒ»¶Ë½øÐвåÈ롢ɾ³ýÔËË㡣ͨ³£²åÈ롢ɾ³ýµÄÒ»¶Ë³ÆÎªÕ»¶¥£¬ÁíÒ»¶Ë³ÆÎªÕ»µ×£¬µ±Õ»ÖÐû
ÓÐÊý¾Ýʱ³ÆÎª¿ÕÕ»¡£
Õ»ÖÐÊý¾ÝµÄ²åÈëºÍɾ³ýÖ»ÔÚÕ»¶¥½øÐУ¬ËùÒÔÕ»ÖеÄÊý¾Ý×ÜÊǺó½øÏȳö(LIFO)¡£
Õ»ÉÏ»ù±¾µÄÔËËãÓÐÎåÖÖ£º
* SETNULL(s) ÖÃÕ»sΪ¿ÕÕ»¡£
* EMPTY(s)   ÅжÏÕ»sÊÇ·ñΪ¿Õ¡£
* PUSH(s,x)  ÍùÕ»sѹÈëÊý¾Ýx¡£
* POP(s)     ÈôÕ»s²»Îª¿Õ£¬Ôòµ¯³öÕ»¶¥Êý¾Ý¡£
* TOP(s)     ÈôÕ»s²»Îª¿Õ£¬È¡Õ»¶¥Êý¾Ý¡£
ÏÂÃæ£¬¸ø³öÕ»µÄ×î»ù±¾µÄʵÏÖ´úÂë:
#include <assert.h>
#define STACK_SIZE (1 << 6)
static stack_t stack[STACK_SIZE];
static int top = -1;
static int stack_full(void)
{
return (top == STACK_SIZE - 1);
}
static int stack_empty(void)
{
return (top == -1);
}
void stack_push(stack_t val)
{
assert(!stack_full());
stack[++top] = val;
}
stack_t stack_pop(void)
{
assert(!stack_empty());
--top;
return stack[top + 1];
}
stack_t stack_top(void)
{
assert(!stack_empty());
return stack[top];
}
 
´ÓÉÏÃæµÄʵÏÖ´úÂë¿ÉÒÔ¿´³ö£¬ÊµÏÖÕ»µÄ»ù±¾²Ù×÷µÄ´úÂëÊǷdz£¼òµ¥µÄ£¬²»¹ý¶þÈýÊ®ÐеĴúÂëÁ¿¡£Èç¹ûÔÚʵ¼ÊµÄ´ú
Â뿪·¢ÖУ¬¸ù¾ÝÓ¦ÓõÄÌØ¶¨Êý¾ÝÀàÐÍʵÏÖÉÏÊö¼¸¸ö²Ù×÷½Ó¿ÚÒ²ÊǺÜÈÝÒ׵쬵«´æÔÚ¼¸¸öÃ÷ÏÔµÄȱÏÝ:
* ´úÂë²»¾ß±¸¸´ÓÃÐÔ¡£
* ²ÉÓþ²Ì¬Êý×é´æ´¢£¬Õ»¿Õ¼äÐèÔÚ±àÒëǰȷ¶¨¡£
* ²»Ö§³Ö´æ´¢¶àÖÖÊý¾ÝÀàÐÍ£¬ÐèÒªÐÞ¸Ästack_t¶¨Òå¡£
Ϊ´Ë£¬ÎÒÃÇÖØÐÂʵÏÖÁËÈçϵÄÒ»Ì׽ṹ£¬À´Âú×ãÉÏÃæµÄÕâЩ¸´ÓÃÐÔÌØÕ÷ÐèÇ󣬴úÂëÈçÏÂ:
#include <stdlib.h>
#include <string.h>
#include <assert.h>
struct _stack {
int top;
size_t len;
size_t size;
char *base;
};
typedef unsigned int hdl;
typedef struct _stack stack;
hdl stack_create(size_t size, size_t len)
{
stack *vp = (stack*)malloc(sizeof(stack));
if (vp == NULL) {
return 0;
}
assert(size > 0 && len > 0);
vp->base = (char*)malloc(size *


Ïà¹ØÎĵµ£º

GNU C LIB

×ÔÓɵĸèÒ¥

¡¡¡¡±¾ÊéÊÇ×ÔÓÉÈí¼þ´ÔÊéµÄÒ»²¿·Ö£¬Ò²ÊÇÒ»Ê××ÔÓɵĸèÒ¥¡£
¡¡¡¡±¾ÊéÖвûÊöµÄGNU C¿â£¬¶¨ÒåÁËËùÓÐÔÚISO C±ê×¼Ëù¹æ¶¨µÄ£¬ÒÔ¼°POSIX±ê×¼¡¢ÆäËüÏà¹Ø±ê×¼ºÍUNIXϵͳËùÅÉÉúµÄ±ê×¼Öж¨ÒåµÄËùÓк¯Êý£¬ÎªGNU²Ù×÷ϵͳËùÖ§³Ö¡£
C³ÌÐòÉè¼ÆÓïÑÔÌṩÖîÈçÊäÈë/Êä³ö¡ ......

ʲô²Å½Ð¾«Í¨C/C++


It is better to have the ability of fast learning
ÓÐÒ»ÌìÄã覺µÃÉõ麼¶¼ÖªµÀÁË   ¿É±¯
ÓÐÒ»ÌìÄã卻發現ÄãÉõ麼¶¼²»會 ¼ÓÓͰÉ
ÓÐÒ»ÌìÄã發現ÄãÓÖÉõ麼¶¼會ÁË 繼續
ÓÐÒ»ÌìÄã發現ÄãÉõ麼¶¼²»會ÁË ³É¹¦ÁË ......

ÈçºÎÓÃC²úÉú0 99Ëæ»úÊý?

#include <stdlib.h>
#include<stdio.h>
#include<time.h>
#define randomize() srand((unsigned)time(NULL)) //¶¨ÒåÒ»¸öºê
int main(void)
{
int i;
printf("Ten random numbers from 0 to 99\n\n");
randomize();
for(i=0; i<100; i++)
{
printf("%d\n", rand() % 100);
sleep(1) ......

CÓïÑÔº¯Êý£¨Ò»£©


ÔÚÇ°ÃæÒѾ­½éÉܹý£¬£ÃÔ´³ÌÐòÊÇÓɺ¯Êý×é³ÉµÄ¡£ËäÈ»ÔÚÇ°Ãæ¸÷ÕµijÌÐòÖдó¶¼Ö»ÓÐÒ»¸öÖ÷º¯Êýmain()£¬µ«ÊµÓóÌÐòÍùÍùÓɶà¸öº¯Êý×é³É¡£º¯ÊýÊÇ£ÃÔ´³ÌÐòµÄ»ù±¾Ä£¿é£¬Í¨¹ý¶Ôº¯ÊýÄ£¿éµÄµ÷ÓÃʵÏÖÌØ¶¨µÄ¹¦ÄÜ¡££ÃÓïÑÔÖеĺ¯ÊýÏ൱ÓÚÆäËü¸ß¼¶ÓïÑÔµÄ×Ó³ÌÐò¡££ÃÓïÑÔ²»½öÌṩÁ˼«Îª·á¸»µÄ¿âº¯Êý(ÈçTurbo C£¬MS C¶¼ÌṩÁËÈý°Ù¶à¸ö¿âº¯Êý)£¬» ......

CÓïÑÔλÔËËã

Ç°Ãæ½éÉܵĸ÷ÖÖÔËËã¶¼ÊÇÒÔ×Ö½Ú×÷Ϊ×î»ù±¾Î»½øÐеġ£ µ«Ôںܶàϵͳ³ÌÐòÖг£ÒªÇóÔÚλ(bit)Ò»¼¶½øÐÐÔËËã»ò´¦Àí¡££ÃÓïÑÔÌṩÁËλÔËËãµÄ¹¦ÄÜ£¬ÕâʹµÃ£ÃÓïÑÔÒ²ÄÜÏñ»ã±àÓïÑÔÒ»ÑùÓÃÀ´±àдϵͳ³ÌÐò¡£
12.1 λÔËËã·û£ÃÓïÑÔÌṩÁËÁùÖÖλÔËËã·û£º
    &          °´ ......
© 2009 ej38.com All Rights Reserved. ¹ØÓÚE½¡ÍøÁªÏµÎÒÃÇ | Õ¾µãµØÍ¼ | ¸ÓICP±¸09004571ºÅ