标题:使用bzero或者memset对每维清零后赋不起值
只看楼主
Mrluoyuzhao
Rank: 1
等 级:新手上路
帖 子:5
专家分:7
注 册:2021-9-1
结帖率:50%
已结贴  问题点数:20 回复次数:2 
使用bzero或者memset对每维清零后赋不起值
#include <stdio.h>
#include <string.h>

int main()
{
        char buf[3][3];
        int i;
        int j;

        for (i = 0; i < 3; i++) {
            for (j = 0; j < 3; j++) {
                bzero(buf[i], 3);
                buf[i][j] = '1';
                printf("buf[%d][%d]:%c\n", i, j, buf[i][j]);                                
            }
        }
        for (i = 0; i < 3; i++) {                                                                    
            for (j = 0; j < 3; j++) {                                                                    
                printf("%p,%p\n", buf[i], &buf[i][j]);                                             
                printf("buf[%d][%d]:%c\n", i, j, buf[i][j]);
            }                                                                           
        }

        return 0;
}
// buf[]每个维度(指针)地址我也打印出来没问题的,但是bzero后就是赋不起值,请问各位大佬是怎么回事呢
搜索更多相关主题的帖子: printf int for i++ include 
2021-09-02 16:44
自由而无用
Rank: 9Rank: 9Rank: 9
等 级:贵宾
威 望:14
帖 子:61
专家分:1456
注 册:2021-8-9
得分:10 
for (i = 0; i < 3; i++) {
    bzero(buf[i], 3);
    for (j = 0; j < 3; j++) {
        buf[i][j] = '1';
        printf("buf[%d][%d]:%c\n", i, j, buf[i][j]);                                
    }
}
2021-09-02 17:06
Mrluoyuzhao
Rank: 1
等 级:新手上路
帖 子:5
专家分:7
注 册:2021-9-1
得分:0 
回复 2楼 自由而无用
你这是啥意思哦??
2021-09-02 17:18
rjsp
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:版主
威 望:507
帖 子:8890
专家分:53117
注 册:2011-1-18
得分:10 
位置错了,但把 bzero(buf[i], 3); 删掉更好,在你这段代码中没作用。
2021-09-02 18:59



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-506737-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.080092 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved