malloc 碰到的詭異問題

2021-06-19 00:05:51 字數 1647 閱讀 6079

**中先申請了一塊記憶體, 應該不存在記憶體越界問題,但第二個malloc申請記憶體是總是core dump/

但我寫的**應該沒有這個問題。

源**如下:

1 #include

2 #include

3 #include

4 #include

5 #include

6 7 char* str1;

8 char* str2;

9 10 int* matrix;

11 int len1;

12 int len2;

13 14 int get_max_len(int x, int y, int* start)

15 41         }

42 43         if (max_len < cur_len)

44        

48 49         ++x, ++y;

50     }

51 52     return max_len;

53 }

54 55

56 int main(int argc, char* argv)

57 70

71     cur_len = 0;

72     max_len = 0;

73     start = 0;

74     s = -1;

75     max_len = 0;

76     int offset = 0;

77 78     str1 = argv[1];

79     str2 = argv[2];

80 81     len1 = strlen(str1);

82     len2 = strlen(str2);

83 84     matrix = (int*) malloc(sizeof(int) * (1+len1 * len2));

85 86     for (i = 0; i < len1; i++)

87    

92     }

93 94     for (i = 0; i < len1; i++)

95    

103     }

104

105     for (i = 0; i < len2; i++)

106    

114     }

115

116     free(matrix);

117

118     sub_str = (char*)malloc(max_len+1); // 如果之前的malloc不 +1 在ubuntu上總是提示越界coredump,但在fedora沒問題。

119     strncpy(sub_str, str1+start, max_len);

120     sub_str[max_len] = '\0';

121

122     printf("max substr is %s\n", sub_str);

123

124     return 0;

125 }

126

wcf的詭異問題

最近在做工作流設計器用的silverlight 使用wcf服務.過程中遇到了兩個奇怪的問題.1.出現整型引數無法傳遞到伺服器的情況 2.出現反序列化失敗的情況.經過仔細排查發現 每個屬性都有乙個 specified bool型別的屬性.記得這個是在使用web應用而不是服務引用的時候才出現的.後指定了...

nio ByteBuffer碰到的問題

bytebuffer1.allocate服務端接收不到op read事件問題 bytebuffer bytebuffer bytebuffer.allocate length sc.write bytebuffer 通過allocate建立的bytebuffer,需要呼叫下filp 方法,不呼叫,s...

Docker 詭異問題

在三颱虛擬化出來的伺服器離線部署docker服務 因為該伺服器初次部署docker服務,docker compose up d之後,導致伺服器的ssh掉線了,後面不管怎麼測試都無法通過外部網路登入。但是內部的伺服器網路可以正常訪問。因為啟動容器的時候,建立了容器使用的網路,初步懷疑是docker建立...