ndk01.1_C简单语法,数组的定义

一、Hello World

安装 visual studio 2013

创建vs项目:
文件->新建->项目->Visual C++ -> Win32 控制台应用程序 ->命名

hello word:

int main(){  //主入口
    printf("Hello NDk"); //打印到控制台
    system("pause"); //暂停 使用system需要添加头文件#include 
    return 0;

}

注释代码的快捷键 Ctrl+k+c

二、C基本语法

  • 1.基本数据类型:

      //基本数据类型
      //int short long  float double char bool
      //short %d
      //long %ld
      //float %f
      //double %lf
      //char %c
    
      int main(){
          int i = 1;
          printf("%d\n",i);  //%d 此处代表int类型的i , \n 表示换行的意思(控制台打印一个1后换行)
      
          float f = 23.3;
          printf("%f\n",f);  //%f 此处代表folat类型的f
      
          system("pause");  //停住控制台
          return 0;
      }
    
  • 2.标准的输入函数scanf() 与区地址运算符&

      int main(){
          int n;
          printf("请输入一个int数据:\n");
          printf("地址:%#x\n",&n);  //打印n的地址
          // scanf()控制台输入语句
          //%d 需要一个int 或者short 类型的数据
          //&n 取n这个变量的地址  
          scanf("%d", &n);   //从控制台读取一个数据写入到内存里面
          printf("%d\n",n);
          system("pause");
          return 0;
      }
    
  • 3.数组定义

      //1.必须指定数据类型 
      //2.必须定义的时候指定数组长度 分配内存空间
      int intArray[10]; 
      float fArray[10];
    
  • 4.数组定义错误示范:

      //错误一:
      //使用scanf获取N的值不能定义数组,因为scanf函数是在运行的时候才获取值,在预编译的时候n是没有值的 数据的定义一定要确定的值才能分配内存空间,所以就不能通过。
      int n;
      scanf("%d",&n);
      int a_array[n];
    
    
      错误二:
      //也是不能编译通过:因为n也是只有在运行的时候才有值
      int n = 10;
      int a_array[n];
    
    
      正确示范:
      //const修饰int n 之后就能够编译成功,因为const 相当于java中的static ,将n定义在了静态内存中。
      const int n = 10;
      int a_array[n];
    
  • 5.控制流程语句

      //流程控制语句和java是一样的
          for
          if
          switch
          while
          break
          contiue
    

---------------------------------------------不怎么华丽的分割线--------------------------------------

三、错误笔记

  • 1.编译时出错

    出现错误:
    _CRT_SECURE_NO_WARNINGS警告
    解决:
    右键项目根目录->项目->属性->C/C++ ->预处理器->预处理器定中添加 _CRT_SECURE_NO_WARNINGS关闭这个预定义

ndk01.1_C简单语法,数组的定义_第1张图片

四、使用技巧

  • 1.查看内存工具的使用(断点的时候->调试->窗口->内存->)
ndk01.1_C简单语法,数组的定义_第2张图片

五、知识要点

1. 为什么定义数组的时候一定要指定数组长度?
C语言中定义数组的时候必须把数组定义在一块连续的内存空间,所以我们在预编译阶段就必须计算出需要使用的内存的大小,这样才能够在内存中找到一块能够连续的空间存放数组数据,如果需要的内存超过了计算机能够存放的剩余内存就会出现 栈(stack)溢出。
2. 数组的存储限制
数组是存储在stack栈中,stack的大小是有限制的,10M ,并且我们不需要手动去释放内存,计算机会自动帮我们释放,如果需要定义更大的数组我们就需要动态申请,动态申请的数字存放在堆内存中,并且我们需要手动释放内存。

你可能感兴趣的:(ndk01.1_C简单语法,数组的定义)