函数内容
由于pwn 以及 Reverse 方向需要大量的基础函数知识,固在此记录遇到的陌生的函数用。
memset
设置指定内存中的内容
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26
| #include <iostream> #include <bits/stdc++.h> using namespace std;
int main() {
int arr[10];
memset(arr, 0, sizeof(arr)); for (int i = 0; i < 10; i++) { printf("%d ", arr[i]); } int num = 1; memset(&num,5,1); printf("%d",num);
return 0; }
|
1
| outPut: 0 0 0 0 0 0 0 0 0 0 5
|
atoi
将字符串的数字转成int的数字
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27
| #include <iostream> #include <bits/stdc++.h> using namespace std;
int main() {
const char *str = "123abc"; int num = atoi(str); printf("%d\n", num);
char test1[5] = "1234"; char test2[7] = "abcdef";
int t1 = atoi(test1); int t2 = atoi(test2);
printf("%d,%d",t1,t2);
return 0; }
|
strcat
用于将一个字符串连接到另一个字符串的末尾
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23
| #include <iostream> #include <bits/stdc++.h> using namespace std;
int main() {
const char *str = "123abc";
char test1[9] = "1234"; char result[20]; strcpy(result, str);
strcat(result, test1);
printf("%s", result);
return 0; }
|
outPut: 123abc1234