Advertisement
Guest User

Untitled

a guest
Aug 27th, 2015
64
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.87 KB | None | 0 0
  1. 1. 请写出在一台32位的x86机器上,以下代码中各printf的结果。
  2.  
  3. # include <stdio.h>
  4.  
  5. static char str1[] = "abc";
  6. static char str2[] = "abc";
  7.  
  8. int main() {
  9. const char str3[] = "abc";
  10. const char str4[] = "abc";
  11. const char *str5 = "abc";
  12. const char *str6 = "abc";
  13. char str7[] = "abc";
  14. char str8[] = "abc";
  15.  
  16. printf("%d\n", str1 == str2);
  17. printf("%d\n", str3 == str4);
  18. printf("%d\n", str5 == str6);
  19. printf("%d\n", str7 == str8);
  20.  
  21. /**************************************/
  22.  
  23. int a[20];
  24. int *p1 = (int *)a;
  25. int *p2 = (int *)(a + 5);
  26. char *p3 = (char *)a;
  27. char *p4 = (char *)(a + 5);
  28.  
  29. printf("%d %d\n", p1 - p2, p3 - p4);
  30.  
  31. /**************************************/
  32.  
  33. int k = 0x12345678;
  34. char *p = (char *)&k;
  35.  
  36. printf("%c\n", p[1]);
  37.  
  38. /**************************************/
  39.  
  40. char *ptr1 = "upyun";
  41. char ptr2[100] = "upyun";
  42.  
  43. typedef struct s1 {
  44. int a;
  45. short b;
  46. }s1;
  47.  
  48. int size1 = sizeof(ptr1);
  49. int size2 = sizeof(*ptr1);
  50. int size3 = sizeof(ptr2);
  51. int size4 = sizeof(s1);
  52.  
  53. printf("%d %d %d\n", sizeof(short), sizeof(int), sizeof(long));
  54. printf("%d %d %d %d\n", size1, size2, size3, size4);
  55.  
  56. return 0;
  57. }
  58.  
  59. 2. 在头文件中经常会发现#ifndef _HEADER_NAME_H/#define _HEADER_NAME_H/#endif,请问是什么作用?
  60.  
  61. 3. 写一个函数void MemNCpy(const char *src, int len, char *dst),实现从src开始拷贝len个字符到dst。
  62.  
  63. 4. C++里new与malloc的区别是什么?
  64.  
  65. 5. 当你在浏览器地址栏里输入http://www.upyun.com并回车之后,浏览器都做了哪些工作?
  66.  
  67. 6. 请用你最擅长的语言编程实现以下功能:
  68. 给定一个从小到大排序的整数序列 v,以及一个任意的正整数 x,若 x 在此序列中,那么返回其所在位置的下标值;否则,返回 -1。
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement