精华内容
下载资源
问答
  • 以下程序输出结果是____。

    千次阅读 2017-08-01 16:27:24
    以下程序输出结果是__。class A { public: virtual void func(int val = 1) { std::cout<<"A->";} virtual void test() { func();} }; class B : public A { public: void func(int val=0

    以下程序输出结果是__

    class A
    {
    public:
        virtual void func(int val = 1)
        { std::cout<<"A->"<<val <<std::endl;}
        virtual void test()
        { func();}
    };
    class B : public A
    {
    public:
        void func(int val=0)
    {std::cout<<"B->"<<val <<std::endl;}
    };
    int main(int argc ,char* argv[])
    {
        B*p = new B;
        p->test();
    return 0;
    }

    正确答案: B

    A、A->0
    B、B->1
    C、A->1
    D、B->0
    E、编译出错
    F、以上都不对

    正确答案:B

    记住:virtual 函数是动态绑定,而缺省参数值却是静态绑定。 意思是你可能会 在“调用一个定义于派生类内的virtual函数”的同时,却使用基类为它所指定的缺省参数值。
    结论:绝不重新定义继承而来的缺省参数值!(可参考《Effective C++》条款37)
    对于本例:

    B*p = newB;
    p->test();

    p->test()执行过程理解:
    (1) 由于B类中没有覆盖(重写)基类中的虚函数test(),因此会调用基类A中的test();
    (2) A中test()函数中继续调用虚函数 fun(),因为虚函数执行动态绑定,p此时的动态类型(即目前所指对象的类型)为B*,因此此时调用虚函数fun()时,执行的是B类中的fun();所以先输出“B->”;
    (3) 缺省参数值是静态绑定,即此时val的值使用的是基类A中的缺省参数值,其值在编译阶段已经绑定,值为1,所以输出“1”;
    最终输出“B->1”。所以大家还是记住上述结论:绝不重新定义继承而来的缺省参数值!

    展开全文
  • 以下程序输出结果是:

    千次阅读 2018-11-21 23:31:50
    以下程序输出结果是: #include “stdio.h” main() {char *s,*s1=“here is”,*s2=“key”; s=s1; while (*s1!=’\0’) s1++; while (*s1++!=*s2++) s2=s; while (*s2!=’\0’) s2++; printf ("%d-%d=%d\n&...

    以下程序的输出结果是:
    #include “stdio.h”
    main()
    {char *s,*s1=“here is”,*s2=“key”;
    s=s1;
    while (*s1!=’\0’) s1++;
    while (*s1++!=*s2++) s2=s;
    while (*s2!=’\0’) s2++;
    printf ("%d-%d=%d\n",s2,s,s2-s);
    }
    之前一直不理解这个的结果是什么意思。。
    在这里插入图片描述

    #include "stdio.h"
    main()
    {char *s,*s1="here is",*s2="key"; 
    s=s1; //从这里开始,print的s=s1=19748668,即字符串存储起始位置
    while (*s1!='\0')	s1++;//s1向后走,直到字符串的末尾\0,此时printf的s1=19748675
    while (*s1++!=*s2++)	s2=s;
    //这行功能:比较s1与s2,s1的“h”(位置为s+1=19748669)与s2的“k”不同,则s2=s
    //这行执行后:s1=19748922,s2=19748669
    while (*s2!='\0')	s2++; 
    //这行让s2查找至末尾\0: s2=19748675(*s2="here is")
    printf ("s=%d\n",s);
    printf ("s1=%d\n",s1);
    printf ("s2=%d\n",s2);
    printf ("%d-%d=%d\n",s2,s,s2-s);//s2-s即“here is”的长度为7
    }
    

    每次执行程序,存储位置都不一定相同,故s,s1,s2的值每次都会有所不同,但是存储的相对位置是不会改变的,s2-s即“here is”的长度,为7。

    展开全文
  • python实时获取外部程序输出结果

    千次阅读 2018-08-25 01:03:50
    s=subprocess.Popen("...,bufsize=0,stdout=subprocess.PIPE,universal_newlines=True) while True: nextline=s.stdout.readline() print(nextline.strip()) if nextline=="" and scan.p...
    s=subprocess.Popen("ping baidu.com -t",bufsize=0,stdout=subprocess.PIPE,universal_newlines=True)
    while True:
        nextline=s.stdout.readline()
        print(nextline.strip())
        if nextline=="" and scan.poll()!=None:
            break
    展开全文
  • 以下程序段的输出结果为()。 for(i=4;i>1;i--) for(j=1;j;j++) putchar('#'); A:无 B:###### C:# D:###
  • void ss (char *s,char t) { while (*s) { if(*s==t) *s=t-‘a’+’A’; s++; } } void main() { char str1[100]=“abcddfefdbd”,c=‘d’; ss (str1,c); printf ("%s\n",str1); } ABCDDEFEDBD ...Abcd...

    void ss (char *s,char t)
    {
    while (*s)
    {
    if(*s==t) *s=t-‘a’+’A’;
    s++;
    }
    }
    void main()
    {
    char str1[100]=“abcddfefdbd”,c=‘d’;
    ss (str1,c); printf ("%s\n",str1);
    }

    ABCDDEFEDBD
    abcDDfefDbD
    abcAAfefAbA
    Abcddfefdbd

    解析:
    函数ss的功能就是将字符串s中的所有字符为t的字符替换为大写字符。对
    于主函数中的函数ss的调用,就是将字符串str1中的小些字符’d’替换成大写字符’D’。所以
    正确答案是B。

    展开全文
  • class CharTest { public static void main(String[] args) { char c = (char)70000; System.out.println(c); } } 请问这个程序为什么输出结果是一个问号?
  • VS程序输出窗口显示运行结果不完整的解决办法

    万次阅读 多人点赞 2018-04-12 10:40:11
    会发现一部分运行结果“丢失”,如图1所示,本来第一列数应该是从0开始的,结果是从651.325开始的,我一直怀疑是程序有错,可是仔细检查了好几遍后也没发现哪里有错,那为什么输出结果不对呢?搞得我都开始怀疑人生...
  • 之前自己都是用Visual C++编写c++程序的,今天试了下用VS,结果发现程序运行之后,结果一闪就没了。 【解决方案】 方法1:不要直接按绿色的运行键,而是选择调试->开始执行(不调试) 方法2:加入命令system(...
  • 将Java程序结果输出到txt文件中

    千次阅读 2019-05-18 22:43:03
    1.将输出结果输出到txt文件 步骤一:头文件导入 import java.io.PrintStream; 步骤二: PrintStream ps = new PrintStream(“C:\a.txt”); //创建一个打印输出流,输出的目标是:C盘的a文件 步骤三: System.setOut...
  • 将Java程序输出结果写到txt文件中

    万次阅读 2017-07-25 11:28:45
    1.将输出结果输出到txt文件 步骤一:头文件 import java.io.FileOutputStream;  import java.io.PrintStream;   可能还会提醒抛出错误,于是import java.io.FileNotFoundException; 步骤二:  Prin
  • 1、将输出结果输出到txt文件 步骤一: 头文件 import java.io.FileOutputStream; import java.io.PrintStream; 可能还会提醒抛出错误,于是import java.io.FileNotFoundException; 步骤二: PrintStream ps = ...
  • 新建py文件,在里面写入Python代码,代码的功能是打印10次“Hello!...其中getHtml.py是已经写好的Python脚本,html.txt是目标文件,也就是要把脚本运行结果输出到html.txt中打开html.txt文件,可以
  • Contents 1. 前言 2. 使用临时文件 3. 使用匿名管道 4. 使用popen ...比如实现一个ping程序来测试网络的连通性,实现ping函数需要写上200~300行代码,为什么不能直接调用系统的ping命令...
  • 写了一个JAVA程序,想再写一个界面,将程序输出结果显示在界面上该怎么做
  • ![图片说明](https://img-ask.csdn.net/upload/201811/24/1543064916_667462.jpg)
  • Unix界有一句名言:“一行shell脚本胜过万行C程序”,虽然这句话有些夸张,但不可否认的是,借助脚本确实能够极大的简化一些编程工作。比如实现一个ping程序来测试网络的连通性,实现ping函数需要写上200~300行代码...
  • #include int main() { printf("Hello, World1! \n"); printf("Hello, World2! \n"); printf("Hello, World3!...该程序运行之后会在屏幕上输出 ...如何将这个输出结果自动保存到一个txt的文档中?
  • 执行下列程序是输入,123<空格>456<空格>789<回车>,输出结果是? main() {char s[100]; int c,i; scanf("%c",&c); scanf("%d",&i); scanf("%s",s); printf("%c,%d,%s\n",c,i,s); }解释一下,谢谢你们
  • 将c语言输出结果输出到txt

    万次阅读 2016-03-19 21:02:44
    FILE *fp;//建立一个文件操作指针  fp=fopen("1.txt","w");//以追加的方式建立或打开1....//同输出printf一样,以格式方式输出到文本中  fclose(fp);//关闭流 #include #include using namespace std; i
  • shell中获取程序输出

    千次阅读 2016-08-05 14:16:35
    1.待执行的程序 gcc printf.c -o printf #include int main() { printf("hello world\n"); return 1; } 2.shell脚本 test.sh #! /bin/sh value1=`./printf` value2=$? echo "value1: $value1" ...
  • 如何使用javascript编写一个加法程序,从文本框输入两个数字,用alert输出结果
  • Java程序输出到JSP页面

    千次阅读 2017-07-24 16:34:25
    Java程序中的输出一般都使用System.out.println()之类,然而对应使用JSP编程的朋友来说,想把Java程序中的输出打印到页面上,确实得费点劲了。目前本人所知的办法有三种:   1.使用字符串作为返回值  ...
  • 微信小程序输出Object,Object

    千次阅读 2020-07-17 15:51:19
    本来以为只是一条简单的输出应该不会影响什么的,后来加了这一条Console.log (res)试了一下输出结果当场沸腾,有数据了,我靠,你在玩我!你是不是跟我一样以为输入前面加点内容应该不会有问题,还记得我以前在前端...
  • http://outofmemory.cn/code-snippet/8187/linux-top-command-view-by-process-name-or-process-id top -p `pgrep python | tr "\\n" "," | sed 's/,$//'` https://www.aliyun.com/zixun/conte
  • linux下编译C程序执行C程序 printf没有输出
  • x=input('please input an integer of more than 3 digits:') try: x=int(x) x=x//100 if x==0: print('You must input an integer of more than 3 digits.') else: print(x) excep
  • netstat命令输出结果分析

    万次阅读 2016-04-12 11:15:28
    所以有必要看懂netstat命令输出结果的含义,下面给出三个典型的结果: 说明:Tserver01为一个UDP服务器测试程序,用于接收客户端的请求数据,然后回传另一组数据到客户端。 UDP ——传输协议为UDP协
  • 编写一个控制台应用程序,完成下列功能,并写出运行...2) 再创建一个类B,使其继承自类A,然后重写A中的MyMethod方法,将A中接收的整型值加50,并输出结果。3) 在Main方法中分别创建类A和类B的对象,并分别调用MyMethod
  • python程序输出无内容问题

    万次阅读 2018-05-19 18:07:26
    问题缘由 某项目中使用python脚本方式将日志文件中的数据持续的转换格式输出到...测试发现,当前台直接输出到终端时正常,使用后台运行重定向的方式输出到文件中时无法输出。 解决办法 运行时加-u参数,如...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 1,633,845
精华内容 653,538
关键字:

以上程序的输出结果是