基础

http://topic.csdn.net/u/20090211/16/773219a4-bb84-4702-8669-28fef466af62.html?29585
一、基础知识
1、 下面几个是在编程领域里经常使用的缩写,请写出他们的英文全写,并翻译成中文。注意是编程领域.
(1) OS  operator system
(2) VS visual studio
(3) MS microsoft
(4) CS ?
(5) RTOS Real Time Operator System
(6) SDK  Software Development Kits
(7) IDE  Integrated Development Environment
2、 下列几个C语言表达式是否正确?如果正确,写出它们表达的意思:
(1) a&b
(2) a&(&b)
(3) a&&b
(4) a**b
3、 在编程风格中,一般都要强调使用匈牙利命名法,下面是匈牙利命名法中一些公认的前缀,并给出变量名的例子,请写出它们所代表的变量类型:
前缀 变量名 描述前缀的意义
g_ g_Lock  
m_ m_Num  
p pTrack  
h hModule  
sz szText  
dw dwMsg  

4、头文件中ifndef / define / endif 是做什么用的?
5、代码里有时可以看到extern “C”, 这语句是做什么用的? 
6、软件开发中说的check out, check in是什么意思?
7、C语言函数前面加static,和C++类的成员函数前面加static,两者的意义有何区别?
8、简单描述一下WIN32上 .c / .cpp / .rc / .obj / .res / .lib / .dll / .exe这几个后缀所表示的文件类型,以及他们之间的相互生成关系。如果你是LINUX程序员,前面这个问题答不上,那么请描述一下GCC编译的几个步骤和中间生成文件。

二、简单代码
1、
char* GetMemory(void)
{
  char p[] = “Welcome to AMOI”;
  return p;
}
void main(void)
{
  char* str = NULL;
  str = GetMemory();
  printf(str);
}
运行main函数的结果如何?你觉得该段代码是否存在什么问题?
**********************
输出乱码,在函数内部声明的变量开辟的是栈上的内存,在函数返回时已经销毁,str = GetMemory()返回的内容不可知;“释放了内存还在使用”“不要返回指向栈内存的指针或引用”
**********************

2、
void GetMemory(char** p, int len)
{
  *p = (char*)malloc(len);
}
void main(void)
{
  char* str;
  GetMemory(&str, 100);
  strcpy(str, “Hello World”);
  printf(str);
}
运行main函数的结果如何?你觉得该段代码是否存在什么问题?
**********************
输出hello world
内存泄露
void GetMemory(char** p, int len)
{
  *p = (char*)malloc(len);
}
void main(void)
{
  char* str;
  GetMemory(&str, 100);
  strcpy(str, "Hello World");
  printf(str);
  free(str);
  str = NULL;
  system("pause");
}
问题:
void GetMemory(char *p, int len)
{
  p = (char*)malloc(len);
}
 GetMemory(str, 100);
和上面有什么区别?运行结果一样,为什么用**
**********************
 

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值