c/c++总结

本文探讨了C与C++中struct的区别,包括变量声明方式及成员访问权限的不同,并介绍了字符串反转的方法、virtual和static的多种用法。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

 入题

 

1、c与c++的struct与什么区别?

答:1) c语言的struct定义变量时,必须在变量名前面加struct,如声明了一个结构:

struct t

{ int i;

 char c

},

定义变量时必须这样:struct t tt,不能少了struct,而c++就可以直接t tt;这也时我们经常会见到结构这样 的声明方式:

typedef struct t

{

int i;

 char c;

}t,

这样我们就可以隐藏掉struct了。

      2)c语言中的结构体只能声明成员变量,而c++的结构体可以,其实c++的结构体就是类,可以设定成员的访问权限:public、protected、private,只是默认为public,而class默认为public,注意c语言中struct并不能给成员变量设置权限。

 

2、将一个字符串如“hello world!”反过来?

 

答:该题有可能会改错,建议自己能写出代码:

#include<stdio.h>
#include<string.h>
#include<malloc.h>
void main()
{
 char *src = "hello world!";
 char *dst = NULL;

 int len = strlen(src);
 dst = (char*) malloc(len+1); // 注意 "hello world!"末尾的'/0'

 char *tmp = dst;
 src = &src[len-1]; // 只想src字符串最后一个字符

 while(len-- !=0)
  *tmp++ = *src--; // 注意是后增量,循环到结束时,tmp又向前偏移了一位
 
 *tmp = '/0'; // 别忘了结束符


 printf("%s/n", dst); // 打印测试

 free(dst); //释放内存
}

 3、virtual的用法?

1)声明类中的普通虚函数

2)声明类的纯虚函数

3)声明类的虚拟析构函数

4)类的虚拟继承

 

4、static的用途?

1)静态局部变量

2)静态全局变量

3)静态普通函数

4)静态(类)成员函数

5)静态(类)成员变量

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值