zoukankan      html  css  js  c++  java
  • 我也要学C语言(威力加强版)_第二章:system函数与命令行参数以及内存的查看

    system函数

      在C语言中可以使用system函数向操作系统传递控制台命令,通过system()函数执行命令和在DOS窗口中执行命令都是一样的效果。但是WINDOWS控制台下使用的命令比起LINUX下的SHELL还是很弱的。不过一些常用的命名都还是有的,可以满足一般的操作需要。比如我们要复制1个文件到1个目录中就可以这样写代码。

    #include <stdio.h>
    #include <stdlib.h>

    1 int main(int argc, char *argv[], char *envp[])

    2 {
    3 int n_system_oversee;
    4
    5 if (!(n_system_oversee = system("copy E:\\asm\\1.asm F:\\1.asm")))
    6 {
    7 system("cls");
    8 printf("success!!!\r\n");
    9 }
    10 else
    11 {
    12 printf("Error, please check!!!\r\n");
    13 }
    14
    15 return0;
    16 }

    这段代码,如何你电脑里有E盘,F盘,并存E盘下有我们想要复制的源文件,如何F盘剩余空间大于此文件,那么就会成功的复制文件!

      但是这样的程序没有什么实用性,因为此程序已经固定死了文件,没有通用性!为了达到通用性,我们可以这样加入命令行参数!

     1 #include <stdio.h>
    2 #include <stdlib.h>
    3
    4 int main(int argc, char*argv[], char*envp[])
    5 {
    6 char buffer[80];
    7 sprintf(buffer, "copy %s %s", argv[1], argv[2]);
    8
    9 system(buffer);
    10
    11 return0;
    12 }

    内存里的数据

     1 void main()
    2 {
    3 int nTest =0x87654093;
    4 int nTestB = (int)&nTest;
    5 float fTest =0.0317123f;
    6
    7 printf("nTest=");
    8 scanf("%x", nTestB);
    9 printf("nTestB=");
    10 scanf("%x", &nTestB);
    11
    12 printf("%%hello world!\r\n"
    13 "nTest\t= %08xEnd\r\n"
    14 "fTest\t= %08xEnd\r\n"
    15 "nTestB address is %p\r\n",
    16 nTest, nTestB, &nTestB); // 80;
    17
    18 system("pause");
    19 }

    这个程序显示了C语言的灵活度。你想如何解释一些数据就可以如何去解释。只要长度合适。

    经典摇滚曲:get free

  • 相关阅读:
    QML学习笔记(三)-引入Font-awesome
    QML学习笔记(一)-防止鼠标穿透事件
    JS小积累(一)— 判断在线离线
    electron入门笔记(三)- 引入bootstrap
    express搭建服务器
    生成SSH密钥添加到GitHub
    python中常见的错误
    PyCharm在同一个包(package)下,如何把一个.py文件导入另外一个.py文件下
    在PyCharm中导入Numpy和Pygame模块 (win8.1)
    Pycharm中安装Pygame并写第一个程序
  • 原文地址:https://www.cnblogs.com/dodolook/p/2143532.html
Copyright © 2011-2022 走看看