Android 下 JNI 开发Day1

输入输出函数-32

1_输出函数

printf(“你要输出的内容”);

%d  –  int

%ld – long int

%c  – char

%f –  float

%u – 无符号数

%hd – 短整型

%lf – double

%x – 十六进制输出 int 或者long int 或者short int

%o –  八进制输出

%s – 字符串 

1、写代码如下

main()

{

     int i = 1234;

     long l = 12345678;

     char c = ‘a’;

     float f = 3.1415;

     double d = 3.1415926535;

     printf(“i=%d\n”,i);

     printf(“l=%ld\n”,l);

     printf(“c=%c\n”,c);

     printf(“f=%f\n”,f);

     printf(“d=%lf\n”,d);          

     system(“pause”);      

}   

运行演示结果如下:

f被补成6位了,d被截断了,

导致的原因是默认输出小数点后六位

2、解决方案:

 原来代码:

 printf(“f=%f\n”,f);

 printf(“d=%lf\n”,d);

 改成如下:

 printf(“f=%.4f\n”,f);

 printf(“d=%.10lf\n”,d);

对应的类型使用对应的占位符输出,不然会损失精度

例如:

 int i = 12345678;

 printf(“i=%hd\n”,i);

2_输入函数

Java中的输入函数:System.in();

C中的输入函数:scanf(“输入的类型占位符”,内存地址);

例如:

int len;

scanf(“%d”, &len);

A:整数的输入函数创建新的文件“输入函数.c

#include<stdio.h>

#include<stdlib.h>

/*

输入函数

int len;

scanf(“%d”, &len);

*/

main()

{

      printf(“请输入一个数字:“);

      int i;//定义一个i,用来接收用户的数据

      scanf(“%d”,&i); //&i 取i变量在内存中的地址

      printf(“i=%d\n”,i);

      system(“pause”);

}    

B:输入字符序列

java 中用string表示一个字符串

c语言中没有字符串

c语言中表示字符串是使用字符序列:char数组

 写法

 char cArray [] = {‘a’,’b’};   正确

 char [] cArray = {‘a’,’b’};   错误

  C语言中不能在for循环中定义变量

  int j;

  for( j=0;j<5;j++){                   

  }   

完整代码:

  char cArray [5] ;

  scanf(“%s”,cArray);

   int j;

   for( j=0;j<5;j++){       

      printf(“cArray[%d]==%c\n”,j,cArray[j]);            

  }     

C:输入字符序列另外一中方式 

 char cArray[] = {‘h’,’e’,’l’,’l’,’o’,’\0′};//\0代表数组结束

 printf(“cArray=%s\n”,cArray);  

 上面代码输出的是hello

 有时候后面会多什么东西,导致的原因是:数组是一块连续的内存空间,它不知道时候结束。

 char cArray[] = {‘h’,’e’,’l’,’l’,’o’,’\0′,’a’,’b’};//\0代表数组结束

 printf(“cArray=%s\n”,cArray);  

上面代码输出的是hello

char cArray[] = {‘h’,’e’,’l’,’l’,’o’,’a’,’b’};//\0代表数组结束

 printf(“cArray=%s\n”,cArray);  

上面代码输出的是helloab

//指针

    char* cPoint= “Hello world”;

    printf(“c=%s\n”,cPoint);


上一篇:
下一篇:
关于尚硅谷
教育理念
名师团队
学员心声
资源下载
视频下载
资料下载
工具下载
加入我们
招聘岗位
岗位介绍
招贤纳师
联系我们
电话:010-56253825
邮箱:info@atguigu.com
地址:北京市昌平区宏福科技园综合楼6层(北京校区)

 深圳市宝安区西部硅谷大厦B座C区一层(深圳校区)

上海市松江区谷阳北路166号大江商厦6层(上海校区)