文章标题

来源:互联网 发布:淘宝网上注册网店步骤 编辑:程序博客网 时间:2024/05/22 09:44

Number 1

C语言中gets()函数会读取换行符并丢弃;如下面例子:
“while (gets(string_source) && string_source[0] != ‘\0’)
printf(“Enter the number: “);
scanf(“%d”, &number);//会在缓存区留有换行符;
strncpy1(string_target, string_source, 4);
printf(“The target string is: “);
puts(string_target);
while (getchar() != ‘\n’)
continue;//下一次gets函数会把上一次的换行符读入,因此需要此来消去换行符;

其中string_source[0] != ‘\0’一般表示换行终止程序

Number 2
定义的指针必须初始化,如下面
char *str;
strcpy(str,”The C language”);//存在问题;
因为指针str没有初始化,字符串可能被复制到任何地方。记住:声明一个数组将为数据分配存储空间;而声明一个指针只为一个地址分配存储空间。

Number 3
注意:赋值表达式的值为等号左边的值。
例子:
while ((nomatch = strncmp(str1, str2, strlen(str2) - 1)) && i–)
str1++;//正确
while (nomatch = strncmp(str1, str2, strlen(str2) - 1) && i–)
str1++;//错误
(赋值表达式要用括号括起来,因为赋值的优先级最低)

0 0
原创粉丝点击