Вопрос по С++

daoway

кот Шрёдингера
Ответ: программо на С совет по делу..........

KoLoB сказав(ла):
Иногда удобно, когда делаешь лабораторные работы по С++ в универе и приходиться все грузить с флешки-дискеты.
Эмн... а стандартные заголовочные файлы (stdio.h, stdlib.h) тоже все носятся на дискете в месте с програмкой ? Я то говорю как раз об этом. По-моему если компилятор настроен, то он сам должен расчёхляться где хедеры (_стандартные_).
 

serg_pet

New Member
Ответ: программо на С совет по делу..........

Нет. Для того, чтобы компилировать с консоли, надо указывать путь к инклудам -I и путь к либам -L
т.е. пример может быть такой
bcc.exe -Ic:\bcpp\include -Lc:\bcpp\lib prog.c
сам он ничего расчехлять небудет.
 

daoway

кот Шрёдингера
Ответ: программо на С совет по делу..........

serg_pet сказав(ла):
Нет. Для того, чтобы компилировать с консоли, надо указывать путь к инклудам -I и путь к либам -L
т.е. пример может быть такой
bcc.exe -Ic:\bcpp\include -Lc:\bcpp\lib prog.c
сам он ничего расчехлять небудет.
А маленький конфигурационный файлик с настройками уже отменили ?
Дело вкуса, конечно...
 

quant

yeah
Ответ: программо на С совет по делу..........

daoway сказав(ла):
А маленький конфигурационный файлик с настройками уже отменили ?
Дело вкуса, конечно...
serg_pet хоть сказал, обьяснил и показал пример...
 

quant

yeah
Ответ: программо на С совет по делу..........

если адрес p - указателя на int 0x0012ff1с то адрес указателя ++p 0x0012ff20
почему так? разве int занимает не 2 байта? ведь здесь разница в 4 байта
 
A

AkeL.php

Guest
Ответ: программо на С совет по делу..........

Вспомни, что такое указатель типа ++p :)
 

quant

yeah
Ответ: программо на С совет по делу..........

AkeL сказав(ла):
Вспомни, что такое указатель типа ++p :)
не понял что ты имееш в виду
для тех кто в танке
int i
int* pi = &i
int* pp = ++pi //если уж так угодно (pi + 1)
watсh window сказав(ла):
pi == 0x0012ff1с
pp == 0x0012ff20
дальше на счёт указателей
&pi == 0x0012ffe8
&pp == 0x0012fff0
это ещё почему? ведь размер указателя 4 байта!
ну хотя с указателем на указатель - указатели могут быть расположены не друг за другом
 

GrAndSE

Тёмный
Модератор
Ответ: программо на С совет по делу..........

Евгений_Анатольевич сказав(ла):
Вопрос:
как передать параметры программе при вызове
я думал, что просто указав некие аргументы в функцию main(),
но по видимому я ошибалсо.........
А какой компилятор. Я пользуясь gcc получил такой вот результат:
grandse@grandse:~$ ./a.out
Input file name:
new.c
Input somesin:
asdasdfas

Bye !!!

grandse@grandse:~$ vi new.c
А также:
grandse@grandse:~$ ./a.out newfile.dat
Input somesin:
asfsadfafasfasfsdf

Bye !!!
 
Останнє редагування:

NaBlA

Сын Амбера
Ответ: программо на С совет по делу..........

Именно в функции main() и нужно указывать.
Первый агрумент типа int - количество записей.
Второй аргумент - массив указателей, в который эти значения и будут писаться.
Точно не помню, как правильно, но что-то типа main(int n, char* arg[])
 

GrAndSE

Тёмный
Модератор
Ответ: программо на С совет по делу..........

quant сказав(ла):
не понял что ты имееш в виду
для тех кто в танке
int i
int* pi = &i
int* pp = ++pi //если уж так угодно (pi + 1)
А под чем это компилилось коли не секрет?
это ещё почему? ведь размер указателя 4 байта!
ну хотя с указателем на указатель - указатели могут быть расположены не друг за другом
Вполне логично, что компилятор мог расположить всё немного не так как нам бы хотелсоь и мечталось :)
 
Зверху