关于字符串和动态分配内存的学习

一、视频学习

1、观看视频:1.2.2动态内存分配、1.3.1单字符输入输出、1.3.2字符串数组

2、手写笔记

 

 

 3、代码列表

 4、遇到的问题

(1)问题:观看视频1.3.1中不理解为什么单字符输入时要通过Ctrl+Z(Windows)或Ctrl+D(Unix)才能结束输入。

         结果:查阅相关信息得知视频中所说的shell在遇到文件结束符(EOF)前仍会等待用户输入数据,正如视频中翁恺老师在输入一堆字符敲下回车后程序仍未结束。而Ctrl+Z与Ctrl+D相当于文件结束符(EOF)当shell接收到文件结束符时才结束程序。

(2)问题:在观看视频1.3.2程序参数时对于argv[1]、argv[2]等的输出方式存在疑惑,不知怎么输出。

         代码:

                  #include<stdio.h>
                  int main(int argc,char const *argv[]){
                  int i;
                  for(i=0;i<argc;i++){
                  printf("%d:%s\n",i,argv[i]);
                  }
                  return 0;
                  }

         结果:错误尝试: int main(int argc,char const *argv[]={,1354641,asfgasdg})、int main(int argc,char const *argv[]){char const*argv[]={51351,sdgds}}

                   询问老师后得知,argv[x](x=!0)从DEVC++运行一栏的参数选项中添加

                  如图:

                 

猜你喜欢

转载自www.cnblogs.com/zsj123/p/12497385.html