#include <stdio.h> menu() { printf("********************\n"); printf("** 1.Add 2.Sub **\n"); printf("** 3.Mul 4.Div **\n"); printf("***** 0.exit *****\n"); printf("****************
#include <stdio.h> int Add(int x, int y) { return (x + y); } int Sub(int x, int y) { return (x-y); } int Mul(int x, int y) { return (x*y); } int Div(int x, int y) { return (x/y); } //函数指针数
#include <stdio.h> int Add(int x, int y) { return(x + y); } //函数指针 int main() { int a = 10, b = 20; int (*p)(int, int) = Add; printf("%d\n",Add(a,b)); printf("%d\n", p(a, b)); printf("%d
#include <stdio.h> //函数指针 Print(char* str) { printf("%s\n",str); } int main() { void (*p)(char*) = Print; (*p)("Hello World!"); return 0; }
#include <stdio.h> //函数指针 int Add(int x, int y) { return x + y; } int main() { int (*p)(int, int) = Add; printf("%d\n", (*p)(20,30)); return 0; }
#include <stdio.h> //函数指针 int Add(int x, int y) { return x + y; } int main() { int a = 10; int b = 20; printf("%d\n",Add(a,b)); printf("%p\n",Add); return 0; }
#include <stdio.h> //一维指针传参 void test(int* p, int sz) { int i = 0; for (i = 0; i < sz; i++) { printf("%d ",*p+i); } printf("\n"); } int main() { int arr[] = {0,1,2,3,4,5,6,7,8,9};
#include <stdio.h> //数组指针 int main() { int i = 0; int j = 0; int arr1[] = {1,2,3,4,5}; int arr2[] = {2,3,4,5,6}; int arr3[] = {3,4,5,6,7}; int* parr[] = {arr1,arr2,arr3}; for (i = 0; i &
#include <stdio.h> //字符串地址的使用 int main() { char *p1 = "abcdef"; char *p2 = "abcdef"; if (p1 == p2) { printf("haha\n"); } else { printf("hehe\n"); } return 0; }
#include <stdio.h> //字符串地址的使用 int main() { char arr1[] = "abcdef"; char arr2[] = "abcdef"; if (arr1 == arr2) { printf("haha\n"); } else { printf("hehe\n"); } return 0; }
#include <stdio.h> //字符串指针的使用 int main() { char* p = "abcdef"; printf("%c\n",*p); printf("%s\n",p); return 0; }
#include <stdio.h> //野指针 int main() { int arr[10] = {0}; int* p = arr; int i = 0; for (i = 0; i < 11; i++) { //当指针指向的范围超过arr时,p就是野指针 (*p++) = i; } return 0; }
#include <stdio.h> //不同指针类型的访问 int main() { int a = 18; int* pa = &a; char* ppa = &a; printf("%p\n",pa); printf("%p\n",pa+1); printf("%p\n",ppa); printf("%p\n",ppa+1); return 0;
#include <stdio.h> //指针类型大小 //指针的大小在32位平台是4个字节,在64位平台是8个字节 int main() { printf("%d\n",sizeof(char*)); printf("%d\n",sizeof(short*)); printf("%d\n",sizeof(int*)); printf("%d\n",sizeof(float*
#include <stdio.h> //指针变量 int main() { int a = 18; int* p = &a;//指针变量 printf("%x\n",p); printf("%d\n",*p); return 0; }
#include <stdio.h> //创建一个结构体类型 struct Stu struct Stu { char name[20]; int age; char id[20]; }; int main() { int a = 0; //使用struct Stu 这个类型创建了一个学生对象s1,并初始化。 struct Stu s1 = { "小鹿瑶瑶",21,"2
exp1?exp2:exp3#include <stdio.h> //条件操作符 exp1?exp2:exp3 //如果exp1成立,则输出exp2,否则输出exp3 int main() { int a = 10; int b = 20; int c = 0; c = (a>b?a:b); printf("c = %d\n",c); return 0; }
#include <stdio.h> //逻辑或|| int main() { int i = 0, a = 1, b = 2, c = 3, d = 4; i = a++ || ++b || d++;//exp1 || exp2 ,若exp1为真,则exp2不执行 printf("a=%d\nb=%d\nc=%d\nd=%d\n",a,b,c,d); return 0; }
#include <stdio.h> //逻辑与&& int main() { int i = 0, a = 0, b = 2, c = 3, d = 4; i = a++ && ++b && d++;//exp1 && exp2 ,若exp1为假,则exp2不执行 printf("a=%d\nb=%d\nc=%d
#include <stdio.h> //sizeof 的使用 void test_1(int arr[]) { printf("%d\n",sizeof(arr)); } void test_2(int ch[]) { printf("%d\n",sizeof(ch)); } int main() { int arr[10] = {0}; char ch[10] = {
#include <stdio.h> //强制类型转换 int main() { int a = (int)3.14; printf("%d\n",a); return 0; }
#include <stdio.h> //单目操作符++ int main() { int a = 10; printf("%d\n",a++);//后置++,先使用,后++ int b = 20; printf("%d\n",++b);//前置++,先++,再使用 return 0; }
#include <stdio.h> //单目操作符~ int main() { int a = 11; a = a | (1 << 2); printf("%d\n",a); a = a & (~(1 << 2)); printf("%d\n",a); return 0; }
#include <stdio.h> //单目操作符sizeof int main() { //sizeof 计算的是变量所占内存空间的大小 int a = 1;//4 char b = 2;//1 int* c = &a;//8 int arr[10] = {0};//40 printf("%d %d %d %d\n",sizeof(a),sizeof(b),s
#include <stdio.h> //单目操作符*,& int main() { int a = 8; int* p = &a;//取地址操作符 *p = 18;//解引用操作符 printf("%d\n",a); return 0; }
#include <stdio.h> //单目操作符! int main() { int a = 18; if (a) printf("哈哈\n"); if (!a) printf("呵呵\n"); return 0; }
#include <stdio.h> //编写代码实现:求一个整数存储在内存中的二进制中的1的个数 int main() { int input = 0; int i = 0; int count = 0; printf("请输入一个整数:"); scanf_s("%d",&input); for (i = 0; i < 32; i++) { if (
#include <stdio.h> //位操作符^,按位异或 //负数需要用补码算 //相同为0,相异为1 int main() { int a = 3; int b = 5; int c = a ^ b; printf("%d\n",c); return 0; }
#include <stdio.h> //位操作符|,按位或 //负数需要用补码算 //有1为1,全0则0 int main() { int a = 3; int b = 5; int c = a | b; printf("%d\n",c); return 0; }
#include <stdio.h> //位操作符& //负数需要用补码算 //有0为0,全1则1 int main() { int a = 3; int b = 5; int c = a & b; printf("%d\n",c); return 0; }
Copyright © 2005-2024 51CTO.COM 版权所有 京ICP证060544号