zoukankan      html  css  js  c++  java
  • C语言(初)

    环境

      CentOS7  
      vmplayer版本(因为免费)
    

    软件

      gcc  (进行编译程序)
      安装: 使用 yum install gcc -y 即可
    

    流程

      使用vim创建一个.C文件 
      vim hello.c
      在里面和在windows平台一样的编辑方法
    
      #include <stdio.h>
    
      int main(void)
      {
          printf("Hello World!");
          return 0;
      }
    
      开始对该文件进行编译 gcc hello.c -o hello.out  生成一个 hello.out 文件
    
      运行该文件 ./hello.out 即可在控制台输出语句。
    
      疑惑点解释:
      #include        预处理器指令,此处引用了stdio.h
    
      main            主函数,程序第一个调用的函数
    
      printf          格式化输出信息
    
      return 0        表示正常退出程序
    
      #include <stdio.h> 为什么用双箭头而不是“”, <> 和 “” 有什么区别吗?
            <> 这个是从系统寻找该文件
            “” 这个一般是自己编写的文件
    
      gcc hello.c -o hello.out 是什么意思?
            -o 是指重新命名了输出文件,不写则默认输出 a.out
    
      ./hello.out 的 ./ 是什么意思?
            ./ 是执行该程序的意思。
    

    扩展:

      **#include    预处理器指令**
            预处理器发现#include指令后就会去寻找#include <> 或者 #include ""里的文件名
    
            #include <> 引用的是编译器的的类库路径里的文件
    
            这个路径在我们编译器安装时候就设定了。比如这个设定在
    
            C:Program Files (x86)Microsoft Visual Studio2017CommunityVCToolsMSVC14.14.26428include
    
            编译器就会在这个目录下面寻找,比如我#include <stdio.h>他就会在这个目录下面进行寻找stdio.h文件,如果没有这个stdio.h文件,编译器就会报错。
    
            #include "" 引用的是你当前程序目录下面相对的文件
    
      **main(主函数)只有两种定义方法是正确的**
            第一种    int main(void)    这种是最常见的
    
            第二种    int main(int argc, char *argv[])    这种是命令行参数所使用到的
    
      **argc表示命令行参数的个数**
    
            argv表示命令行参数的字符串指针
    
            (其中argv[0]表示程序全名,比如:当前项目在F:/Project/下面,则argv[0]表示F:/Project/xxx(xxx为项目名称))
    
     ** main(主函数)返回值    return 0;**
            main(主函数)的返回值表示程序是否正常退出程序,因为在main(主函数)调用完成后会调用exit(ret),ret表示main(主函数)的返回值。exit函数是用来终止当前进程(当前程序),exit(0)表示正常退出,exit(非0)表示异常结束。
    
      **printf    格式化输出信息**
            printf是stdio.h里面的一个函数,只有引用了stdio.h才能使用,当前printf是在控制台上格式输出一条信息,当前输出的内容是HelloWorld!,所以在控制台能看到一条HelloWorld!语句。
    

    ————————————————
    版权声明:本文为CSDN博主「yoohm」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
    原文链接:https://blog.csdn.net/qq_34260368/java/article/details/78188153

  • 相关阅读:
    帮人“解封微信”犯法?全国首例!判刑!
    热乎的校招面经试题解析——百度篇
    字节跳动入局在线教育:烧钱、亏钱
    TF-IDF 算法介绍
    Django ORM 常见查询条件
    Django中render和render_to_response的区别
    Python异步操作MongoDB --Motor的使用
    Java 如何抛出异常、自定义异常
    java项目中的classpath到底是什么
    maven里的modelVersion
  • 原文地址:https://www.cnblogs.com/loveyoul9/p/13290682.html
Copyright © 2011-2022 走看看