c语言指针的学习心得

发布者:SereneWanderer最新更新时间:2015-05-07 来源: 51hei关键字:c语言  指针  学习心得 手机看文章 扫描二维码
随时随地手机看文章
#include<心得>

main()
{
  view *有求于人;
  if(真的做不到)
  {
  point  *怎么办?
  怎么办?=&可以去找比自己犀利的人寻求;
  }
  else(做的到&&但是自己不想努力去做)
  {
  result  *怎么办?
  怎么办?=&悲剧;
  }
有求于人=怎么办;
printf(“有求于人=%chinese”,有求于人);
}
人生道路慢慢曲折,想得到稳定的发展和提高,要时刻思考,如果他不在我身边怎么办,多多去寻找自己解决问题的途径。指针在传递过程,是全传递,而实参传递是部分传递。
#include
main()
{
 int a,b;
 int*p1,*p2;
 a=1;b=3;
// scanf("%d,%d",&a,&b);
 p1=&a;p2=&b;
 if(a  swap(p1,p2);
 printf(" %d,%d ",a,b);
}
swap(int *pa,int *pb)
{
 int p;
 p=*pa;
 *pa=*pb;
 *pb=p;
}

--------------------------------------------------------------
笔记2:指针函数
#include
main()
{
 int a,b,c;
 int max(a,b);
 int (*p)(a,b);
 p=&max;
 scanf("%d%d",&a,&b);
 c=(*p)(a,b);
 printf("max=%d ",c);
 
 while(1);
}
max(a,b)
 {
  if(a>b)
  {
  return a;
  }
  else
  {
  return b;
  }
 }
 

-------------------------------------------------------------------------------------------------
笔记3:多维数组乃一维之嵌套。
笔记4:结构体指针。
main()
{   struct student
    {       long int num;
 char name[20];
 char ***;
 float score;
    }stu_1,*p; 
p=&stu_1;
 stu_1.num=89757;
    strcpy(stu_1.name,"Li Lin"); 
p->***=‘M‘;
 p->score=89.5;
printf(" No:%ld name:%s ***:%c score:%f ",
(*p).num , p->name , stu_1.*** , p->score );
}
笔记5:较难理解的部分,结构化指针整体使用
#include
struct complex add(struct complex,struct complex);
struct complex
{
     double re;//实部
     double im;//虚部
};
struct complex add(struct complex a,struct complex b)
{
 struct complex c;
 c.re=a.re+b.re;
 c.im=a.im+b.im;
 return c;
}
int main()
{
     struct complex x={6.5,8.9},y={7.1,9.4};
     struct complex z;
     z=add(x,y);
     printf("和为:%5.2lf+i%5.2lf ",z.re,z.im);
}
/*#include
struct student
{
 int num;
 char *name;
 char ***;
 float score;
}stu={1,"张宾",'F',55},*pstu;
int main()
{
      pstu=&stu;
      printf("学号:%d 姓名:%s ",stu.num,stu.name);
      printf("性别:%c 成绩:%5.2f ",stu.***,stu.score);
      printf("学号:%d 姓名:%s ",(*pstu).num,(*pstu).name);
      printf("性别:%c 成绩:%5.2f ",(*pstu).***,(*pstu).score);
      printf("学号:%d 姓名:%s ",pstu->num,pstu->name);
      printf("性别:%c 成绩:%5.2f ",pstu->***,pstu->score);
   while(1);
  
}
*/

关键字:c语言  指针  学习心得 引用地址:c语言指针的学习心得

上一篇:protues的3D视图功能
下一篇:如何制作自己的51、AVR单片机开发板

推荐阅读最新更新时间:2024-03-16 14:01

PIC单片机学习心得
1.前言 为了给前一段时间学习PIC16F616型单片机的一个总结和方便大家的交流,我写了这篇关于PIC单片机的学习心得,都是在看了手册和编程调试后用自己的语言组织的,其中有不足或者有疑问的地方希望大家能及时的给予纠正和批评,提出宝贵的意见. 2.PIC单片机的概述 PIC16F616是一款14引脚、8位的CMOS单片机.采用精简指令集,仅有35条指令,由于采用了数据总线和指令总线分离的哈佛总线结构,使得除少量指令不是单周期之外,大部分的指令都是单周期指令.这样有利于提高单片机的运行速度和执行效率. PIC16F616 这款单片机供电电压可以在2V到5.5V之间,内部集成了一个RC振荡器,频率可以配置成8MHZ或者4
[单片机]
单片机C语言的位操作
由于PIC处理器对位操作是最高效的,所以把一些BOOL变量放在一个内存的位中,既可以达到运算速度快,又可以达到最大限度节省空间的目的。 在C中的位操作有多种选择。 ********************************************* 如:char x;x=x|0B00001000; /*对X的4位置1。*/ char x;x=x&0B11011111; /*对X的5位清0。*/ 把上面的变成公式则是: #define bitset(var,bitno)(var |=1 bitno) #define bitclr(var,bitno)(var &=~(1 bitno)) 则上面的操作就是:
[单片机]
单片机C语言精确延时分析
前阵子 琢磨了 ds18b20 温度测控芯片 一直对单片机的延时问题 留有疑惑 花了一下午时间 用 keil 逐步调试和proteus 仿真 对延时问题 做了一些分析 通常 单片机在对时间要求精确的情况下 会使用汇编 来实现相应的模块 通过计算其相应的机器周期 命令执行周期 可以得到精确的时间控制 C语言下 常用的延时 方法 有 for 循环 和 while() 循环 和 定时器延时 但是使用 for 循环 得到的延时效果 不够精确 执行一次 可能会有 10多us 原因已经有人 做了分析 一般单片机 C语言编程 需要经过 编译 将其 转为 汇编代码后 再生成16进制文件 在keil 下 点击菜单栏 flash - Configur
[单片机]
单片机<font color='red'>C语言</font>精确延时分析
指针式万用表对场效应管判别方法
1、用测电阻法判别结型场效应管的电极 根据场效应管的pn结正、反向电阻值不一样的现象,可以判别出结型场效应管的三个电极。具体方法:将拨在r×1k档上,任选两个电极,分别测出其正、反向电阻值。当某两个电极的正、反向电阻值相等,且为几千欧姆时,则该两个电极分别是漏极d和源极s。因为对结型场效应管而言,漏极和源极可互换,剩下的电极肯定是栅极g。也可以将万用表的黑表笔(红表笔也行)任意接触一个电极,另一只表笔依次去接触其余的两个电极,测其电阻值。当出现两次测得的电阻值近似相等时,则黑表笔所接触的电极为栅极,其余两电极分别为漏极和源极。若两次测出的电阻值均很大,说明是pn结的反向,即都是反向电阻,可以判定是n沟道场效应管,且黑表笔接的是栅极
[测试测量]
51单片机的串口收发通信C语言程序
#include REG52.h #include string.h #include stdio.h #define uchar unsigned char #define uint unsigned int #define ulong unsigned long #define ushort unsigned short #define MAX_DATA_LENGTH 32 typedef struct//定义数据发送包 { uchar head;//包头 uchar length;//数据长度 uchar cmd;/
[单片机]
单片机数码管电子钟(C语言)
//*********************************** // 软件名: LED数码 电子钟 //*********************************** // // 软件版本:V1.0.3 // // //*********************************** #include reg52.h #include intrins.h #define uchar unsigned char void delay (void); start_time (); key_adjust (); void alarm (void); time_end (void); // k1调秒 k
[单片机]
如何使用C语言实现51单片机模拟I2C总线
电路原理图 EEPROM为ATMEL公司的AT24C01A。单片机为ATMEL公司的AT89C51。 软件说明 C语言为Franklin C V3.2。将源程序另存为testi2c.c,用命令 C51 testi2c.c L51 TESTI2C.OBJ OHS51 TESTI2C 编译,连接,得到TESTI2C.HEX文件,即可由编程器读入并进行写片,实验。 3.源程序 #include 《reg51.h》 #include 《intrins.h》 #define uchar unsigned char #define uint unsigned int #define AddWr 0xa0 /*器件地址选择及写标志*/ #d
[单片机]
如何使用<font color='red'>C语言</font>实现51单片机模拟I2C总线
模拟串口的C语言代码
本程序是模拟串口硬件机制写的,使用时可设一定时中断,时间间隔为1/4波特率,每中断一次调用一次接收函数, 每中断4次调用一次发送函数,不过.对单片机来说时钟并须要快.要知道9600的波特率的每个BIT的时间间隔是104us.而单片机中断一次压栈出栈一次的时间是20us左右(标准的51核12M晶体)这样处理时间就要考虑清楚了.呵呵.以下程序是放在定时器中断程序函数内的 //接收部分 sbit JieShou_D= ;//定义接收端口 uint8 DingShiJiShu,JieShou_h;//定时计数,接收缓冲器 uint16 JieShou_T;//接收临时寄存器 bit KaiShi,JieShou_b;//开始接收
[单片机]
小广播
添点儿料...
无论热点新闻、行业分析、技术干货……
设计资源 培训 开发板 精华推荐

最新单片机文章
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

换一换 更多 相关热搜器件
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved