错题笔记八

  1. C语言中整型数据可以赋给实型变量。
    答案给的正确 ; 实行数据包括char float double
    后面两个可以兼容自动换成对应类型 char类型 可能会出错
    所以他应该是考虑到了强制类型转换 那可以强制类型转换
    什么转换都可以 ,不是很明白这题的意义
  2. 对于字符串常量 “string!”,系统已自动在最后加入了"\0"字符,表示串结尾
    语句 char str[10] = “string!”; 和 char str[10] = {“string!”}; 等价
 void GetMemory(char **p, int num)
{
    *p = (char *)malloc(num);//错误原因以为需要sizeof
}
void Test(void)
{
    char *str = NULL;
    GetMemory(&str, 100);
    strcpy(str, "hello");
    printf(str);
}
  1. 以下叙述中正确的是(A)
    A 只要适当地修改代码,就可以将do-while与while相互转换
    do while 转换成while很简单 在循环体外面做一次就可以
    while 怎么转换成 do while
    flag = 1
    while(flag || 循环条件)

    if(flag)

    循环体
    flag != flag;

    else{
    循环体


    B 对于"for(表达式1;表达式2;表达式3) 循环体"首先要计算表达式2的值,以便决定是否开始循环 先计算表达式1
    C 对于"for(表达式1;表达式2;表达式3) 循环体",只在个别情况下才能转换成while语句 暂时想不到什么情况不可以
    D 如果根据算法需要使用无限循环(即通常所称的"死循环") ,则只能使用while语句 死循环 while do while for goto 都可以
char array[] = "abcdefg";
	printf("%d\n", sizeof(array));    //字符串后面有\0   所以大小为8
	char *p = "abcdefg";
	printf("%d\n", sizeof(p));			//32位操作系统下指大小是4 64位为8
	void func(char p[10])  
	{
	    printf("%d\n", sizeof(p));  //  数组传参时候传递的是指针 大小同上 
	}
	void func(char (& p)[10])  
	{
	    printf("%d\n", sizeof(p));		//char字符的数组大小每个为1  10个大小//就是10
	      
	}
	int main(void)  
	{
	    printf("%d\n", sizeof(char[2]));  // char[2]数组的大小  2
	    printf("%d\n", sizeof(char &));   //是char类型元素的大小 1
	    return 0;   
	}
using namespace std;
void print(char **str)
{
++str;
cout<<*str<<endl;
}
int main()
{
static char *arr[]={"hello", "world", "c++"};
char **ptr;
ptr=arr;
print(ptr);
return0;
}

结果world
unsigned short A = 10; 
printf("~A = %u\n", ~A);  // -10 取反就算对最大值 -10
char c = 128; 
printf("c=%d\n", c);  // 对范围取余之后 +  -128
  1. #define N 2017
    int arr[N]
    #define N 2017
    int arr[N*2]
    int i=2017; int arr[i]; // i为变量 编译报错
    int arr[]={1};
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值