导航:首页 > 源码编译 > 预编译行添加注释

预编译行添加注释

发布时间:2022-05-16 18:50:54

1. KEIL软件中怎样给连续几行程序加注释

你是要加程序注释还是要屏蔽程序段代码?

加注释的话就用“/* ... */”或者单行注释“//”

要屏蔽程序段代码的话可以用“#ifdef...#endif”来屏蔽。

2. C语言中如何注释

#include<stdio.h> //标准输入输出库所在的头文件
//自定义函数声明
void add(int *m,int *m1,int *m2,int r,int c); //矩阵加法
void sub(int *m,int *m1,int *m2,int r,int c); //矩阵减法
void mult(int *m,int *m1,int *m2,int r,int p,int c); //矩阵乘法
void disp(int *m,int r,int c); //打印数组数据(矩阵里的数据)
//主测试函数
void main()
{
int a[3][4]={{4,3,5,2},{5,1,7,3},{2,7,6,2}};
int b[3][4]={{2,4,4,-7},{4,2,5,-8},{7,-3,-4,2}};
int c[4][3]={{5,4,4},{1,3,1},{4,4,2},{7,1,3}};
int d[3][4]={0};
int e[3][4]={0};
int f[3][3]={0};
printf("\nA(3x4):\n");
disp(a[0],3,4); //显示矩阵a
printf("\nB(3x4):\n");
disp(b[0],3,4); //显示矩阵b
add(d[0],a[0],b[0],3,4); // 计算矩阵 a + b,并将结果存到d中
printf("\nD(3x4)=A+B:\n");
disp(d[0],3,4); //显示a+b的结果(即d中的数据)
sub(e[0],a[0],b[0],3,4);// 计算矩阵 a - b,并将结果存到e中
printf("\nE(3x4)=A-B:\n");
disp(e[0],3,4);//显示a-b的结果(即e中的数据)
printf("\nA(3x4):\n");
disp(a[0],3,4); // 显示矩阵a
printf("\nC(4x3):\n");
disp(c[0],4,3); //显示矩阵c
mult(f[0],a[0],c[0],3,4,3); //计算矩阵a*c 并将结果存到f中
printf("\nF(3x3)=A*C:\n");
disp(f[0],3,3); //显示a*c的结果(即f中的数据)
}
//函数定义
/*
*****函数功能:两个矩阵进行加法运算 C = A+B
*****参数: m 指向运算结果存放的二维数组(即矩阵) C的首地址
***** m1为矩形A的首地址,m2为矩形B的首地址
***** r 为矩阵的行数, c为矩阵的列数
*(m+i*c+j) = *(m1+i*c+j) + *(m2+i*c+j);这个表示将矩阵A的第i行j列的数据 与 矩阵B的第i行j列的数据 相加
然后将结果赋值给矩阵C的第i行j列数据
*(m1+i*c+j) :m1+i*c+j 这个表示指向矩阵A的第i行第j列的数据的指针,则 *(m1+i*c+j) 就表示矩阵A的第i行第j列的数据
*(m2+i*c+j) :m2+i*c+j 这个表示指向矩阵B的第i行第j列的数据的指针,则 *(m2+i*c+j) 就表示矩阵B的第i行第j列的数据
*(m+i*c+j) : m+i*c+j 这个表示指向矩阵C的第i行第j列的数据的指针,则 *(m+i*c+j) 就表示矩阵C的第i行第j列的数据
这里是用指针实现的,
*(m+i*c+j) = *(m1+i*c+j) + *(m2+i*c+j);
等价于
c[i][j] = a[i][j] + b[i][j];
*/
void add(int *m,int *m1,int *m2,int r,int c) //
{
int i,j;
for(i=0; i<r; i++)
for(j=0; j<c; j++)
*(m+i*c+j) = *(m1+i*c+j) + *(m2+i*c+j);
}
//注释与上边加法类似
void sub(int *m,int *m1,int *m2,int r,int c) //两个矩阵之间的减法运算
{
int i,j;
for(i=0; i<r; i++)
for(j=0; j<c; j++)
*(m+i*c+j) = *(m1+i*c+j) - *(m2+i*c+j);
}
/*注释与上边类似,因为矩阵乘法运算公式较为复杂一些,可自行对照矩阵乘法运算公式
如矩阵c = a * b
for(k=0; k<p; k++)
t += *(m1+i*p+k) * *(m2+k*c+j); //表示将m1的第i行k列的数据 与 m2的第k行j列的数据相乘 ,
//并将p (k的值从0到p) 次结果进行累加
*(m+i*c+j)=t; //最后将这个累加的结果赋值给矩阵c的第i行第j列的数据
*/
void mult(int *m,int *m1,int *m2,int r,int p,int c)//两个矩阵之间的乘法运算
{
int i,j,k,t;
for(i=0; i<r; i++)
for(j=0; j<c; j++)
{
t=0;
for(k=0; k<p; k++)
t += *(m1+i*p+k) * *(m2+k*c+j);
*(m+i*c+j)=t;
}
}
//显示打印矩阵中的数据
void disp(int *m,int r,int c)
{
int i,j;
for(i=0; i<r; i++)
{
for(j=0; j<c; j++)
printf("%6d",*(m+i*c+j));
printf("\n");
}
}

3. 请教c语言达人帮我把每行程序加上注释。谢谢了。

//导入头文件
#include <stdio.h>
#include <conio.h>
#include <dos.h>
#include <graphics.h>
//位置宏定义
#define LEFT 120
#define TOP 40
#define RIGHT 520
#define BOTTOM 440
#define SMALL 20

//二维数组,记录横向和竖向的坐标信息
int b[20][20];
b[20][20]={{1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1},
{1,0,0,0,0,0,0,1,1,1,1,1,1,1,1,0,0,0,0,1},
{1,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,1},
{1,0,0,0,0,0,0,1,1,1,1,1,1,1,1,0,0,0,0,1},
{1,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,1},
{1,0,0,0,0,0,0,1,1,1,1,1,1,1,1,0,0,0,0,1},
{1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1},
{1,0,0,0,0,0,0,1,0,0,1,0,0,1,0,0,0,0,0,1},
{1,0,0,0,0,0,0,1,0,0,1,0,0,1,0,0,0,0,0,1},
{1,0,0,0,0,0,0,1,0,0,1,0,0,1,0,0,0,0,0,1},
{1,0,0,0,0,0,0,1,0,0,1,0,0,1,0,0,0,0,0,1},
{1,0,0,0,0,0,0,1,1,1,1,1,1,1,0,0,0,0,0,1},
{1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1},
{1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1},
{1,0,0,0,0,0,0,1,1,1,1,1,1,1,1,0,0,0,0,1},
{1,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,1},
{1,0,0,0,0,0,0,1,1,1,1,1,1,1,1,0,0,0,0,1},
{1,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,1},
{1,0,0,0,0,0,0,1,1,1,1,1,1,1,1,0,0,0,0,1},
{1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1},};

//绘制方块函数
void drawcake(int x,int y)
{
//设置绘图风格,黄色实体填充
setfillstyle(SOLID_FILL,YELLOW);
//在指定的位置上画出来
bar(LEFT+1+x*SMALL,TOP+1+y*SMALL,RIGHT-1-19*SMALL+x*SMALL,BOTTOM-1-19*SMALL+y*SMALL);
}
//绘制函数
void draw(int x,int y)
{
//设置绘图风格,红色实体填充
setfillstyle(SOLID_FILL,RED);
//在指定的位置画出来
bar(LEFT+5+x*SMALL,TOP+5+y*SMALL,RIGHT-5-19*SMALL+x*SMALL,BOTTOM-5-19*SMALL+y*SMALL);
}
//绘制函数
void undraw(int x,int y)
{
//设置绘图风格,黄色实体填充
setfillstyle(SOLID_FILL,YELLOW);
//在制定的位置画出来
bar(LEFT+5+x*SMALL,TOP+5+y*SMALL,RIGHT-5-19*SMALL+x*SMALL,BOTTOM-5-19*SMALL+y*SMALL);
}

//入口函数,一切从这个函数开始
main()
{
//变量定义
int gr=DETECT,gm,k=0,i,j,x=1,y=1,ch;
//变量定义
float f;
//应该是初始化图形系统
initgraph(&gr,&gm,"");
//清空设备
cleardevice();
//设置背景颜色(黑色?)
setbkcolor(0);

//使用循环将地图的块信息绘制出来,按照一行一行的绘制
for(i=0;i<20;i++)
for(j=0;j<20;j++)
if(b[i][j]==1)drawcake(j,i);

//绘制当前的位置,应该是小人或者是其他的,位置在1,1.
draw(x,y);

//获取按键的键值信息
do{
//读取键盘按下去的那个键的虚拟键值
ch=bioskey(0);
//分析是否是以下的键值
switch(ch)
{
case 19200: /*按向左键*/ //如果是符合向左的按键的键值

//判断小人左面是不是空的地方,如果是就绘制走过的痕迹???
if(b[y][x-1]==0)
{
undraw(x,y); //这里是绘制黄色的块,
b[y][x]=0; //当前位置变成空的
x--; //记录向左移动的位置
draw(x,y); //绘制小人当前的新的位置
b[y][x]=2; //将小人记录在地图上的位置.
break;
}
case 19712: /*按向右键*/
if(b[y][x+1]==0)
{
undraw(x,y);
b[y][x]=0;
x++;
draw(x,y);
b[y][x]=2;
break;
}
case 18432: /*按向上键*/
if(b[y-1][x]==0)
{
undraw(x,y);
b[y][x]=0;
y--;
draw(x,y);
b[y][x]=2;
break;
}
case 20480: /*按向下键*/
if(b[y+1][x]==0)
{
undraw(x,y);
b[y][x]=0;
y++;
draw(x,y);
b[y][x]=2;
break;
}
}
//如果小人走到地图的出口了,游戏就结束了.
if(b[18][18]==2)ch=283;
//如果ch的值不是283,就代表游戏没有结束,那么再返回到do的地方做一次.
//这里就是一个循环了,直到结束的时候,才不再继续.否则一直循环.
}while(ch!=283);
//输出字符信息到屏幕上
if(b[18][18]==2)printf(" 恭贺你成功地走出了迷宫!");
getch();
}

4. 程序进行预编译处理时将每个注释替换为一个空格是什么意思,有什么用

可以这么理解:注释是为人增加代码可读性用的,编译过程不需要,所以在预处理阶段编译器会去掉方便后续的动作

5. 求c语言高手帮我给一下编程添加行注释!急急急!

#include <stdlib.h>//这两句是头文件
#include <stdio.h>

struct number
{
int n; //数
int flag; //标记,1为素数,0为非素数
};

void sushu(struct number num[]) //定义函数sushu,形参是结构体变量struct number 型的数组(指针)
{
int n,i,j,k;
printf("Please input a number: ");
scanf("%d",&n); //输入n

for(i=2;i<=n;i++) //初始化,2到n
{
num[i-2].n=i; //将2到n存入数组num,注意下标是从0开始的。
num[i-2].flag=1; //先默认num中的所有数都是素数,即默认所有的flag都是1。
}

for(i=2;i<=n;i++)
{
for(j=2;(num[i-2].n*j)<=n;j++) //素数j倍的数不是素数
{
for(k=2;k<=n;k++) //遍历num数组
{
if((num[i-2].n*j)==num[k-2].n)
num[k-2].flag=0;//如果是前一个确定的素数(比如2)的倍数,则标注flag为0,即表明不是素数。
}
}
}

for(i=2;i<=n;i++)
{
if(num[i-2].flag) //只有flag值为1时,if语句的下面语句才执行。即只打印素数。
printf("%d ",num[i-2].n);//打印结果。
}
printf("\n");
}

int main()
{
struct number num[1000]; //定义一个能容纳1000个结构体变量的数组。

sushu(num); //调用函数sushu,输出结果。

return 0; //主函数返回0,正常结束。
}

6. 程序为什么要加注释加注释有几种方法各有何特点

注释为对代码的解释和说明,其目的是让人们能够更加轻松地了解代码。注释为编写程序时,写程序的人给一个语句、程序段、函数等的解释或提示,能提高程序代码的可读性。注释只是为了提高可读性,不会被计算机编译。

注释通常会分为行注释和块注释。

行注释:在符号后那一行不会被编译(显示);块注释:被块注释符号中间的部分不会被编译。



(6)预编译行添加注释扩展阅读

C语言的注释符以“/*”开头并以“*/”结尾的串。在“/*”和“*/”之间的即为注释。程序编译时,不对注释作任何处理。注释可出现在程序中的任何位置。

注释用来向用户提示或解释程序的意义。在调试程序中对暂不使用的语句也可用注释符括起来,使翻译跳过不作处理,待调试结束后再去掉注释符。

可以使用多种方法创建文字。对简短的输入项使用单行文字。对带有内部格式的较长的输入项使用多行文字(也称为多行文字)。也可创建带有引线的多行文字。

虽然所有输入的文字都使用建立了默认字体和格式设置的当前文字样式,但也可以使用其他的方法自定义文字外观。有一些工具可以方便用户修改文字比例和对正、查找和替换文字以及检查拼写错误。

7. 怎么给代码加注释

C/C++/C#

行注释://这里是注释

块注释:/*这里是注释*/

java

行注释://这里是注释

块注释:/*这里是注释*/

HTML

块注释:<!--这里是注释-->

CSS

块注释:/*这里是注释*/

JavaScript

行注释://这里是注释

块注释:/*这里是注释*/

XML

块注释:<!--这里是注释-->

Python

行注释:#这里是注释

块注释:'''这里是注释'''

SQL Server/Oracle PLSQL

行注释:--这里是注释

块注释:/*这里是注释*/

MySQL

行注释:--这里是注释

行注释:#这里是注释

块注释:/*这里是注释*/

VB

行注释:'这里是注释

汇编语言

行注释:;这里是注释

perl

行注释:# 这是一个单行注释

块注释:

=pod

这里是注释

=cut

Matlab

行注释:%这里是注释

块注释:%%这里是注释%%

块注释:%{这里是注释%}

R语言

行注释:#这里是注释

块注释:if(false){这里是注释}

(7)预编译行添加注释扩展阅读:

关于高级语言中的注释:

1、注释是代码的“提示”或“解释”而非文档;注释主要用于解释代码复杂度;注释应准确、易懂(无二义性)、简洁;程序中有效注释量必须在20%以上。

说明:代码清楚可以自注释的不需加注释,过分详细的注释容易使人厌烦,切记不要自以为高深让别人看不懂而不加注释。

2、注释的目的:为了便于代码的维护、解释代码的功能和方法等方便读者阅读,以及防止不必要的重复信息。

3、给代码添加注释绝对是好习惯,最好边写代码边注释

8. 在java中如何实现预编译

/*
* ProCompile.java *预处理要编译的文件,删除多余的空白,注释,换行,回车等
* Created on 2007年9月18日, 下午8:58 */ package javacompile; import java.io.*;
import java.util.regex.*;
import javax.swing.JOptionPane; /** * @com.junjian.sun public class PerCompile { File f = null;
String fileString = null;
Pattern p = null;
Matcher m = null;
String regex; //正则表达式 //初始化p
public PerCompile() {
regex ="(//.+)" + //(//.+) 对应单行注释
//"|(/\\*(.+\\n)+\\*/)"+ // 想对应多行注释... "|(\\r\\n)" + "|(\\n)"+//(\\r\\n)|(\\n)对应换行
"|(\\B\\s+)" ; // 空白符
String ss;
f = new File(new JOptionPane()
.showInputDialog("请输入文件所在路径~"));
try {
BufferedReader bf = new BufferedReader(new FileReader(f));
ss = bf.readLine()+"\n";
fileString = ss; //如果没有这两句,ss的开头会有“null”
while((ss = bf.readLine())!= null){
fileString += ss+"\n"; bf.close();
} catch (IOException ex) {
ex.printStackTrace(); p = Pattern.compile(regex);
m = p.matcher(fileString); //执行替换所有多余空行,空白符,注释
void Dels(){
System.out.println("before: "+fileString);
if(m.find()) System.out.println("find!!");
System.out.println(m.replaceAll("")); } }

-

9. 在vc++6.0中怎么把一段代码标记为注释 你说的选中一个程序块后,点一下那个命令,那段程序就变成注释了

注释好像只有菜单命令而无快捷键,你从工具-自定义里找找看,其实最好用的还是Alt+F8(自动格式重排)。
vc6.0快捷键大全- -

F1: 帮助
Ctrl+O :Open
Ctrl+P :Print
Ctrl+N :New
Ctrl+Shift+F2 :清除所有书签
F2 :上一个书签
Shift+F2 :上一个书签
Alt+F2 :编辑书签
Ctrl+F2 :添加/删除一个书签
F12 :Goto definition
Shift+F12 :Goto reference
Ctrl+'Num+' :Displays the next symbol definition or reference
Ctrl+'Num-' :Displays the previous symbol definition or reference
Ctrl+J/K :寻找上一个/下一个预编译条件
Ctrl+Shift+J/K :寻找上一个/下一个预编译条件并将这一块选定
Ctrl+End :文档尾
Ctrl+Shift+End :选定从当前位置到文档尾
Ctrl+Home :文档头
Ctrl+Shift+Home :选定从当前位置到文档头
Ctrl+B/Alt+F9 :编辑断点
Alt+F3/Ctrl+F :查找
F3 :查找下一个
Shift+F3 :查找上一个
Ctrl+]/Ctrl+E :寻找下一半括号
Ctrl+Shift+] :寻找下一半括号并选定括号之间的部分(包括括号)
Ctrl+Shift+E :寻找下一半括号并选定括号之间的部分(包括括号)
F4 :寻找下一个错误/警告位置
Shift+F4 :寻找上一个错误/警告位置
Shift+Home :选定从当前位置到行首
Shift+End :选定从当前位置到行尾
Ctrl+L :剪切当前行
Ctrl+Shift+L :删除当前行
Alt+Shift+T :交换当前行和上一行
Ctrl+Alt+T :Brings up the completion list box
Shift+PageDown :选定从当前位置到下一页当前位置
Shift+PageUp :选定从当前位置到上一页当前位置
Ctrl+Shift+Space:显示函数参数的Tooltip
Ctrl+Z/Alt+Backspace :Undo
Ctrl+Shift+Z/Ctrl+Y :Redo
F8 :当前位置变成选定区域的头/尾(再移动光标或者点鼠标就会选定)
Ctrl+Shift+F8 :当前位置变成矩形选定区域的头/尾(再移动光标或者点鼠标就会选定)
Alt+F8 :自动格式重排
Ctrl+G :Goto
Ctlr+X/Shift+Del:Cut
Ctrl+C/Ctrl+Ins :Copy
Ctrl+V/Shift+Ins:Paste
Ctrl+U :将选定区域转换成小写
Ctrl+Shift+U :将选定区域转换成大写
Ctrl+F8 :当前行变成选定区域的头/尾(再移动上下光标或者点鼠标就会选定多行)
Ctrl+Shift+L :删除从当前位置到行尾
Ctrl+Shift+8 :将所有Tab变成`或者还原
Ctrl+T :显示变量类型
Ctrl+↑ :向上滚屏
Ctrl+↓ :向下滚屏
Ctrl+Del :删除当前单词的后半截(以光标为分割)
Ctrl+Backspace :删除当前单词的前半截(以光标为分割)
Ctrl+← :移到前一个单词
Ctrl+→ :移到后一个单词
Ctrl+Shift+← :选定当前位置到前一个单词
Ctrl+Shift+→ :选定当前位置到后一个单词
Ctrl+Shift+T :将本单词和上一个单词互换

10. 在vc++6.0中怎么把一段代码标记为注释你说的选中一个程序块后,点一下那个命令,那段程序就变成注释了

这个问题很简单!注释好像只有菜单命令而无快捷键,你从工具-自定义里找找看,其实最好用的还是Alt+F8(自动格式重排)。
vc6.0快捷键大全--
F1:帮助
Ctrl+O:Open
Ctrl+P:Print
Ctrl+N:New
Ctrl+Shift+F2:清除所有书签
F2:上一个书签
Shift+F2:上一个书签
Alt+F2:编辑书签
Ctrl+F2:添加/删除一个书签
F12:Gotodefinition
Shift+F12:Gotoreference
Ctrl+'Num+':
Ctrl+'Num-':
Ctrl+J/K:寻找上一个/下一个预编译条件
Ctrl+Shift+J/K:寻找上一个/下一个预编译条件并将这一块选定
Ctrl+End:文档尾
Ctrl+Shift+End:选定从当前位置到文档尾
Ctrl+Home:文档头
Ctrl+Shift+Home:选定从当前位置到文档头
Ctrl+B/Alt+F9:编辑断点
Alt+F3/Ctrl+F:查找
F3:查找下一个
Shift+F3:查找上一个
Ctrl+]/Ctrl+E:寻找下一半括号
Ctrl+Shift+]:寻找下一半括号并选定括号之间的部分(包括括号)
Ctrl+Shift+E:寻找下一半括号并选定括号之间的部分(包括括号)
F4:寻找下一个错误/警告位置
Shift+F4:寻找上一个错误/警告位置
Shift+Home:选定从当前位置到行首
Shift+End:选定从当前位置到行尾
Ctrl+L:剪切当前行
Ctrl+Shift+L:删除当前行
Alt+Shift+T:交换当前行和上一行
Ctrl+Alt+T:Bringsupthecompletionlistbox
Shift+PageDown:选定从当前位置到下一页当前位置
Shift+PageUp:选定从当前位置到上一页当前位置
Ctrl+Shift+Space:显示函数参数的Tooltip
Ctrl+Z/Alt+Backspace:Undo
Ctrl+Shift+Z/Ctrl+Y:Redo
F8:当前位置变成选定区域的头/尾(再移动光标或者点鼠标就会选定)
Ctrl+Shift+F8:当前位置变成矩形选定区域的头/尾(再移动光标或者点鼠标就会选定)
Alt+F8:自动格式重排
Ctrl+G:Goto
Ctlr+X/Shift+Del:Cut
Ctrl+C/Ctrl+Ins:Copy
Ctrl+V/Shift+Ins:Paste
Ctrl+U:将选定区域转换成小写
Ctrl+Shift+U:将选定区域转换成大写
Ctrl+F8:当前行变成选定区域的头/尾(再移动上下光标或者点鼠标就会选定多行)
Ctrl+Shift+L:删除从当前位置到行尾
Ctrl+Shift+8:将所有Tab变成`或者还原
Ctrl+T:显示变量类型
Ctrl+↑:向上滚屏
Ctrl+↓:向下滚屏
Ctrl+Del:删除当前单词的后半截(以光标为分割)
Ctrl+Backspace:删除当前单词的前半截(以光标为分割)
Ctrl+←:移到前一个单词
Ctrl+→:移到后一个单词
Ctrl+Shift+←:选定当前位置到前一个单词
Ctrl+Shift+→:选定当前位置到后一个单词
Ctrl+Shift+T:将本单词和上一个单词互换

阅读全文

与预编译行添加注释相关的资料

热点内容
光遇安卓怎么转ios教程小米 浏览:959
python儿童 浏览:42
程序员毕业半年后被辞退 浏览:641
开发板系统编译 浏览:390
pdf安装包下载 浏览:48
如何配置foxmail邮箱服务器 浏览:971
python解释器编译器源代码 浏览:113
服务器ip地址正确为什么连不上 浏览:82
飞天开放平台编程指南 浏览:114
文件夹向上一级 浏览:878
apachelinux配置域名 浏览:786
王者荣耀体验服服务器出错是什么意思 浏览:824
程序员对联意思 浏览:550
php追加txt 浏览:519
java验证码jsp 浏览:753
色铅笔画动漫pdf 浏览:260
a文件编译so 浏览:347
单片机power怎么改成接地 浏览:219
https是什么app 浏览:371
androidstudio优化设置 浏览:436