C语言小结

<1> 把null结尾的字符串转换成整数 

          

                #include <stdlib.h>

  

               int atoi(const char *nptr);
               long atol(const char *nptr);
               long long atoll(const char *nptr);

 

 

<2>如何开启关闭打印信息

 

 #ifdef DEBUG
      #define dbg_prt(fmt,arg...)  printf(fmt,##arg)
#else
      #define dbg_prt(fmt,arg...)
#endif

 

<3>一个把node插入链表尾部的小技巧

 

假设一个struct node{

            struct node* next;

            };的链表。头结点为struct node* head_node;

 

如何把一个新的node插入到该链表的尾部呢。

 

一般方法:

for(p=head_node; p!=NULL; p=p->next)

{

     q=p;//必须另外声明个指针来记录p的位置。以免走到尾部丢失了前结点信息。    

}

q->next=node;//把node插入到链表的尾部。

 

 

新方法是采用指针的指针:

for(p=&head_node;*p; p=&(*p)->next)

{

  

}

 

(*p)=node; //把结点插入到链表的尾部。相当于把node地址写入到*p变量里。

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值