与QQ好友咕嘟咕嘟分享之C “hello word”

首先声明:本人也是菜鸟。

今天在野哥的http://www.xiapy.com/的网站上瞎逛,看衣服,玩搭配。突然想起这么一件T恤Hello  word!于是把QQ个性签名换成了"hello  word",然后......


咕嘟咕嘟
      hello world你会写么? 


咕嘟咕嘟 

      帮我写个c的hello world,我看下,我也写个给你看 


咕嘟咕嘟 

      看这个

      #include <stdio.h>

      int main(int argc,char **argv)
      {
        printf("hello world\n");
        return 0;
      }


      完了告诉我有什么错误 ,告诉我每个东西的含义 


咕嘟咕嘟 
      哈哈   不会了吧
      给你看这个:http://zh.wikipedia.org/wiki/Hello_World

空杯楠 

      你写的很奇怪啊 

咕嘟咕嘟 

      为什么奇怪啊?
      你是说main的两个参数么? 

 空杯楠 

      #include <stdio.h>

      int main(int argc,char **argv)
      {
        printf("hello world\n");      
        return 0;
      }
      对啊  

咕嘟咕嘟 

      哈哈
      估计你就不知道main的参数 

空杯楠 
      所以你故意那么写?
      int main(void) 

      ???

咕嘟咕嘟 
      你去搜索下main的参数吧
      很好玩的 

 空杯楠 

      我学任何一个hello word 输出的时候 都没见这么定义的  基本2,3行

咕嘟咕嘟 

      hello world可以写的很复杂的,我帮你写个你看下哈。 

空杯楠 

      为什么要把简单的程序复杂化


咕嘟咕嘟 
      要符合标准啊 

空杯楠 
      晕了 好,你写写看

咕嘟咕嘟

      #include <stdio.h>

      static int
      parseStartOptions(int argc, char **argv)
      {

        if (argc > 1)
        {
          printf("hello %s",argv[1]);
        }
        else
        {
          printf("hello world\n");
        }
         return 0;
      }

      int main(int argc,char **argv)
      {
        int ret;
        ret = parseStartOptions(argc, argv);
        if (ret)
        {
          exit(0);
        }
        return 0;
      }

空杯楠 
      一个*是指针 **是什么玩意啊

咕嘟咕嘟 
      指向指针的指针,意思是给main的第2个参数必须是指向一个char8的地址 
      刚刚那个程序还有优化的空间,你还要看么 ? 

空杯楠 
      当然,看

咕嘟咕嘟 

      刚刚那个程序只考虑了有参数和没有参数的情况
      但是多个参数的时候就会有问题或者说遗漏
      所以可以再改 

      #include <stdio.h>

      static int
      parseStartOptions(int argc, char **argv)
      {
        int i;

        if (argc > 1)
        {
          printf("hello ");
          for(i=1;i<argc;i++) 
          printf("%s ",argv[i]);
          printf("\n");
        }
        else
        {
          printf("hello world\n");
        }
        return 0;
      }

      int main(int argc,char **argv)
      {
        int ret;
        ret = parseStartOptions(argc, argv);
        if (ret)
        {
          exit(0);
        }
        return 0;
      }
      对main的两个参数有详细说明的一个hello world 

 咕嘟咕嘟 

      所以记得千万别说自己会 hello world
      说这个的要不就是初学者,要不就是很nb的人 


空杯楠 

      明白了


咕嘟咕嘟 

      hello world决定语言的风格 

空杯楠 
      决定语言的风格 
      为什么呢

咕嘟咕嘟 
      就好象说的一样
      我那个main函数决定了是在终端输入的
      本身不在与hello world
      而在于你对程序的理解
      现在写windows代码的人几乎就不会
      main(int argc ,char** argv)这样的写法
      但是早期的dos程序员肯定都是这么写的 

空杯楠 
      对
      而在于你对程序的理解
      技术不是最重要的 重要的是语言基础

咕嘟咕嘟 
      恩
      就是这个道理
      hello worle对于初学者来说就是知道程序是怎么跑起来的
      但是对于一个比较老练的程序员来说就是一个艺术品了 
      minigui hello world,你用这个做关键字搜索下,看看有多少错误 ?

空杯楠 
       约有 2,770 项符合 minigui hello world 的查询结果,以下是第1-10 项。 (搜索用时 0.24 秒

咕嘟咕嘟 
      看看这些问题
      所以说hello workd很难 

空杯楠 
      的确

咕嘟咕嘟 
      好玩吧 


空杯楠 
      好玩
      hello  word 今天长见识了

咕嘟咕嘟 

      嘿嘿

      程序会写是一会事

      知道是另外一个事的  
 

咕嘟咕嘟  
      今天不很忙,所以有时间跟你说哈
      哈哈

      http://blog.csdn.net/haoel/archive/2009/04/29/4134807.aspx

看看这个。。。也很好玩!

原文地址:https://www.cnblogs.com/csn0721/p/1505888.html