keil C 从零学起 教训1
#include<reg52.h>
#define uchar unsigned char
#define uint unsigned int
uchar num;
void main()
{
TMOD=0x01;
TH0=(65536-45872)/256;
TL0=(65536-45872)%256;
EA=1;
ET0=1;
TR0=1;
P1=0xFF;
while(1);
}
void T0_time() interrupt 1
{
TH0=(65536-45872)/256;
TL0=(65536-45872)%256;
num++;
if(num==20)
{
num=0;
if(P1==0x00)
{
P1=0xFF;
}
else
P1=P1>>1;
}
}
如果在interrupt服务函数中,if判断P1==0x00写成P1=0x00,那就出现编译警号(并非错误)
warning C276: constant in condition expression 警告。
今天干干开始学习,就遇到了由于粗心引起的问题。
看来一个好的编程习惯是编程者实践的必要素质。
相关文档:
1.1 变量作用域
1.1.1 几种常见类型变量的作用域
作用域(scope)或者可见性是指变量在程序内的可见和可引用的范围。
比如:
1、 全局变量在所有的文件都可见,那他的作用域就是所有文件;
2、 static定义的全局变量,只在定义它的源文件中可见,那他的作用域就是其所在的源文件;
3、 函数内部的局部变量,只在其函数 ......
POSIX标准定义的头文件
<dirent.h> 目录项
<fcntl.h> 文件控制
<fnmatch.h> 文件名匹配类型
<glob.h> 路径名模式匹配类型
<grp.h> ......
打开文件或者程序
1、ShellExecute(0,"open","c:\\abc.exe","","",SW_SHOW);
2、WinExec("c:\\a.exe",SW_SHOW);
3、system("dir c:\\");
关闭文件
m_hwnd = FindWindows("Notepad","a.txt-记事本");
SendMessage(m_hwnd,WM_SYSCOMMAND,SC_CLOSE,0);
隐藏DOS窗口
#pragma comment( linker, "/subsystem:\"windows\" ......
发信人: RoachCock (反动学术权威), 信区: CPlusPlus
标 题: extern "C" 阅读笔记
发信站: 水木社区 (Fri Mar 7 00:22:47 2008), 站内
本以为很简单,仔细阅读了一下 C++ 标准,发现内容还不少。总结了一下。
要点:
函数类型,函数名,变量名具有语言链接性,language linkage。
语言链接性可能会影响到 ......
//库函数实现
char *strcat (char *dst, const char *src)
{
char *p = dst;
while (*p)
p++;
while ((*p++ = *src++))
;
return dst;
}
char *strncat (char *s1, const char *s2, long unsigned int n)
{
char *dest = s1;
  ......