C/C++学习笔记[01].纵向打印整数
#include <stdio.h>
#include <string.h>
#include <math.h>
#define BASE 10
int intlen(long n);
int main()
{
int i, j, num, sz;
i = j = num = sz = 0;
if (!scanf("%d", &num) || num <= 0) {
printf("invalid input\n");
return 1;
}
sz = intlen(num);
for (i = sz; i > 0; i--) {
for (j = 1; j <= num; j++) {
printf("%d",(j % (int) (pow(BASE,i))) / (int) (pow(BASE,i - 1)));
}
printf("\n");
}
return 0;
}
int intlen(long n)
{
return log10(fabs(n)) + 1;
}
/* vim: set ts=4 sw=4: */
从标准输入接收一个大于0的整数,竖向打印1-这个数之间的数
用到了对数函数取整数的位数,取模运算,整除运算,指数运算
相关文档:
clock()返回clock_t类型;
在time.h头文件中,定义了 typedef long clock_t
clock()是用来计算两个时间点之间的时间间隔。如下程序:
#include <stdio.h>
int main()
{
int i = 0;
clock_t start_time, end_time;
start_time = clock(); //开始计时, start_time = 0
while( ......
首先确保系统已经安装了gcc/g++
1> Anjuta
打开终端:
命令:sudo apt-get install anjuta
(不能安装的需要添加安装源
添加源:点击主菜单上的“系统”》“系统管理”》“软件源”,输入密码后,在出现的对话框中点“第三方软件”,
“deb http://anjuta.org.sixxs. ......
可惜MS-DOS不是中国人写的,不支持中文。
/* Note:Your choice is C IDE */
#include "stdio.h"
main(int argc, char *argv[])
{
FILE *fp;
char ch;
int num=0,max;
int line=0;
if((fp=fopen(argv[1],"rt"))==NULL)
{
printf("\nCannot open file strike any key exit!");
getch();
exit(1);
......
以 i2c-mpc.c 驱动模块为例
fsl_i2c_init -> of_register_platform_driver -> of_register_driver -> driver_register -> bus_add_driver -> driver_attach
-> bus_for_each_dev -> __driver_attach -> driver_probe_device -> really_probe -> drv->probe(dev); ......
1. 什么是空指针常量(null pointer constant)?
[ 6.3.2.3-3] An integer constant expression with the value 0, or such an expression cast to type void *, is called a null pointer constant.
这里告诉我们:0、0L、'\0'、3 - 3、0 * 17 (它们都是“integer constant expression”)以及 ......